diff --git a/hive/indexer/follow.py b/hive/indexer/follow.py
index 1dcc90cf6ab82e38770b39095d1eabb11866f096..3cfa5f5b5d5ca90fe85dd25b5efaea1cd66b0eb3 100644
--- a/hive/indexer/follow.py
+++ b/hive/indexer/follow.py
@@ -2,6 +2,7 @@
 
 import logging
 from time import perf_counter as perf
+from json import dumps
 
 from funcy.seqs import first
 from hive.db.adapter import Db
@@ -12,6 +13,7 @@ from hive.indexer.accounts import Accounts
 from hive.indexer.db_adapter_holder import DbAdapterHolder
 from hive.utils.normalize import escape_characters
 
+
 log = logging.getLogger(__name__)
 
 FOLLOWERS = 'followers'
@@ -100,7 +102,20 @@ class Follow(DbAdapterHolder):
             return None
 
         op['following'] = op['following'] if isinstance(op['following'], list) else [op['following']]
+        
+        # additional layer of protection against putting complex data types as user names
+        as_str = []
+        for following in op['following']:
+            if isinstance(following, list) or isinstance(following, dict):
+                as_str.append(dumps(following))
+            else:
+                as_str.append(str(following))
+        op['following'] = as_str
 
+        if isinstance(op['follower'], list) or isinstance(op['follower'], dict):
+            op['follower'] = dumps(op['follower'])
+        else:
+            op['follower'] = str(op['follower'])
 
         # follower/following is empty
         if not op['follower'] or not op['following']:
diff --git a/mock_data/block_data/follow_op/mock_block_data_follow.json b/mock_data/block_data/follow_op/mock_block_data_follow.json
index fd6cb77fc7d31c7cd55775cc7467550dd6429ca8..e0089d8a89030b9f22721ff85ae7546709a2e4d6 100644
--- a/mock_data/block_data/follow_op/mock_block_data_follow.json
+++ b/mock_data/block_data/follow_op/mock_block_data_follow.json
@@ -365,6 +365,72 @@
               "id": "follow",
               "json": "[\"follow\",{\"follower\":\"te'%@ter1\",\"following\":[\"tester3\", \"tester4\"],\"what\":[\"blog\"]}]"
             }
+          },
+          {
+            "type": "custom_json_operation",
+            "value": {
+              "required_auths": [],
+              "required_posting_auths": [
+                "{\"tester1\":\"tester1\"}"
+              ],
+              "id": "follow",
+              "json": "[\"follow\",{\"follower\":{\"tester1\":\"tester1\"},\"following\":{\"tester3\":\"tester4\"},\"what\":[\"blog\"]}]"
+            }
+          },
+          {
+            "type": "custom_json_operation",
+            "value": {
+              "required_auths": [],
+              "required_posting_auths": [
+                "tester1"
+              ],
+              "id": "follow",
+              "json": "[\"follow\",{\"follower\":\"tester1\",\"following\":{\"tester3\":\"tester4\"},\"what\":[\"blog\"]}]"
+            }
+          },
+          {
+            "type": "custom_json_operation",
+            "value": {
+              "required_auths": [],
+              "required_posting_auths": [
+                "tester1"
+              ],
+              "id": "follow",
+              "json": "[\"follow\",{\"follower\":\"tester1\",\"following\":[\"tester3\", [\"tester4\"]],\"what\":[\"blog\"]}]"
+            }
+          },
+          {
+            "type": "custom_json_operation",
+            "value": {
+              "required_auths": [],
+              "required_posting_auths": [
+                "tester1"
+              ],
+              "id": "follow",
+              "json": "[\"follow\",{\"follower\":[\"tester1\"],\"following\":[\"tester3\", [\"tester4\"]],\"what\":[\"blog\"]}]"
+            }
+          },
+          {
+            "type": "custom_json_operation",
+            "value": {
+              "required_auths": [],
+              "required_posting_auths": [
+                "[\"tester1\"]"
+              ],
+              "id": "follow",
+              "json": "[\"follow\",{\"follower\":[\"tester1\"],\"following\":[\"tester3\", {\"tester4\":\"tester5\"}],\"what\":[\"blog\"]}]"
+            }
+          },
+          {
+            "type": "custom_json_operation",
+            "value": {
+              "required_auths": [],
+              "required_posting_auths": [
+                "tester1"
+              ],
+              "id": "follow",
+              "json": "[\"follow\",{\"follower\":\"tester1\",\"following\":[\"tester3\", {\"tester4\":\"tester5\"}],\"what\":[\"blog\"]}]"
+            }
           }
         ]
       }