diff --git a/examples/collocatordb_query.c b/examples/collocatordb_query.c
index 2336f85..f75f0c7 100644
--- a/examples/collocatordb_query.c
+++ b/examples/collocatordb_query.c
@@ -4,15 +4,18 @@
 #include <math.h>
 #include "../src/collocatordb.h"
 
-int main(int argc, char* argv[]) {
-    if (argc < 3) {
-        fprintf(stderr, "Usage: %s <dbpath> <word1> [word2] ... [wordN]\n", argv[0]);
-        return 1;
-    }
+int main(int argc, char *argv[]) {
+  if (argc < 3) {
+    fprintf(stderr,
+            "Usage: %s <dbpath> <word1> [word2] ... [wordN]\n"
+            "Gets the collocators of the given words from a collocatordb and "
+            "prints them as json.\n"
+            "Example: %s ../tests/data/wpd19_10000 geht auch\n",
+            argv[0], argv[0]);
+    return 1;
+  }
 
-
-
-    char *dbpath = argv[1];
+  char *dbpath = argv[1];
     char *ext = strrchr(dbpath, '.');
     if (ext && strcmp(ext, ".rocksdb") == 0) {
         *ext = '\0';
@@ -28,6 +31,8 @@
     fprintf(stderr, "Successfully opened %s.\n", dbpath);
 
     int i;
+
+    printf("[\n");
     for (i = 2; i < argc; i++) {
         uint32_t word_id = get_word_id(cdb, argv[i]);
         if (word_id == 0) {
@@ -35,9 +40,9 @@
             continue;
         }
 
-        printf("printing collocators of \"%s\" as json:\n", argv[i]);
-        printf("%s\n", get_collocators_as_json(cdb, word_id));
+        fprintf(stderr, "printing collocators of \"%s\" as json:\n", argv[i]);
+        printf("%s%s\n", get_collocators_as_json(cdb, word_id), i < argc - 1 ? "," : "");
     }
-
+    printf("]\n");
     return 0;
 }
\ No newline at end of file
