diff --git a/docs/c-api/util.h/mg_avprintf.md b/docs/c-api/util.h/mg_avprintf.md
index efc424d004ea20e2c2e2a974cfb5d72f23e6c085..2491db023c6a253e0354a3746e55d4aad97431a6 100644
--- a/docs/c-api/util.h/mg_avprintf.md
+++ b/docs/c-api/util.h/mg_avprintf.md
@@ -6,9 +6,9 @@ signature: |
   int mg_avprintf(char **buf, size_t size, const char *fmt, va_list ap);
 ---
 
-Print message to buffer. If buffer is large enough to hold the message,
-return buffer. If buffer is to small, allocate large enough buffer on heap,
-and return allocated buffer.
+Prints message to the buffer. If the buffer is large enough to hold the message,
+it returns buffer. If buffer is to small, it allocates a large enough buffer on heap
+and returns allocated buffer.
 This is a supposed use case:
 
    char buf[5], *p = buf;