diff --git a/mailman-subscribers3.py b/mailman-subscribers3.py
index 79615ef830fb080aa43d87569e2cd3d93014080c..de6d610dd4fc36c914edac49ac0c0a497d8271d1 100755
--- a/mailman-subscribers3.py
+++ b/mailman-subscribers3.py
@@ -254,6 +254,7 @@ def main():
     digest = None
     sympa = False
     csv = False
+    jsonoutput = False
     kv = False
     unhide = False
     protocol = 'http'
@@ -367,6 +368,8 @@ or you may need to specify --url_path.
     subscriberlist = list(subscribers.items())
     subscriberlist.sort()
 
+    jsonmembers = {}
+    
     # print the subscribers list
     if csv:
         print('"Full name","email address","mod","hide",\
@@ -386,6 +389,7 @@ or you may need to specify --url_path.
                 print('.', end=' ', file=sys.stderr)
         email = urllib.parse.unquote(email)
         if jsonoutput:
+            jsonmembers[email] = d
             continue
         if csv:
             print('"%s","%s","%s","%s","%s","%s","%s","%s","%s","%s"'\
@@ -466,7 +470,7 @@ visibility %s
             print('%s <%s>' % (d['_realname'], email), file=fp)
 
     if jsonoutput:
-        print(json.dumps(dict(subscriberlist), indent=4), file=fp)
+        print(json.dumps(jsonmembers, indent=4), file=fp)
 
     fp.close()