diff --git a/hive/indexer/follow.py b/hive/indexer/follow.py
index 9c77b26d8bff250a6c2b50ae180c94f39569f3d4..f2c727a5b359427a37566a4927f85de7f3a20f11 100644
--- a/hive/indexer/follow.py
+++ b/hive/indexer/follow.py
@@ -101,21 +101,22 @@ class Follow(DbAdapterHolder):
            or not 'following' in op):
             return None
 
+                # follower/following is empty
+        if not op['follower'] or not op['following']:
+            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
-        # we expecting follower and following entries to be strings
-        # in older hivemind this check was done in Accounts.exists
-        # now following can be list of names so we need to check if all entries are strings
-        for following in op['following']:
-            if not isinstance(following, str):
-                return None
-
-        if not isinstance(op['follower'], str):
+
+        # mimic original behaviour
+        # if following name does not exist do not process it: basically equal to drop op for single following entry
+
+        op['following'] = [op for op in op['following'] if Accounts.exists(op)]
+
+        # if follower name does not exist drop op
+        if not Accounts.exists(op['follower']):
             return None
 
-        # follower/following is empty
-        if not op['follower'] or not op['following']:
+        if op['follower'] in op['following'] or op['follower'] != account:
             return None
 
         what = first(op['what']) or ''
@@ -127,16 +128,6 @@ class Follow(DbAdapterHolder):
         if what not in defs:
             return None
 
-        all_accounts = list(op['following'])
-        all_accounts.append(op['follower'])
-        if (op['follower'] in op['following']
-            or op['follower'] != account):
-            return None
-
-        non_existent_names = Accounts.check_names(all_accounts)
-        if non_existent_names:
-            log.warning("Follow op validation, following names does not exists in database: {}".format(non_existent_names))
-
         return dict(flr=escape_characters(op['follower']),
                     flg=[escape_characters(following) for following in op['following']],
                     state=defs[what],
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 e0089d8a89030b9f22721ff85ae7546709a2e4d6..0acf603a28b770b6a58880b067eceff7ad6929cf 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
@@ -352,7 +352,7 @@
                 "tester1"
               ],
               "id": "follow",
-              "json": "[\"follow\",{\"follower\":\"tester1\",\"following\":[\"tester3\", \"tester4\"],\"what\":[\"blogo-doggo\"]}]"
+              "json": "[\"follow\",{\"follower\":\"tester1\",\"following\":[\"tester3\", \"gtg\"],\"what\":[\"blogo-doggo\"]}]"
             }
           },
           {
@@ -363,7 +363,7 @@
                 "te'%@ter1"
               ],
               "id": "follow",
-              "json": "[\"follow\",{\"follower\":\"te'%@ter1\",\"following\":[\"tester3\", \"tester4\"],\"what\":[\"blog\"]}]"
+              "json": "[\"follow\",{\"follower\":\"te'%@ter1\",\"following\":[\"gtg\", \"tester4\"],\"what\":[\"blog\"]}]"
             }
           },
           {
@@ -374,7 +374,7 @@
                 "{\"tester1\":\"tester1\"}"
               ],
               "id": "follow",
-              "json": "[\"follow\",{\"follower\":{\"tester1\":\"tester1\"},\"following\":{\"tester3\":\"tester4\"},\"what\":[\"blog\"]}]"
+              "json": "[\"follow\",{\"follower\":{\"tester1\":\"tester1\"},\"following\":{\"gtg\":\"gtg\"},\"what\":[\"blog\"]}]"
             }
           },
           {
@@ -385,7 +385,7 @@
                 "tester1"
               ],
               "id": "follow",
-              "json": "[\"follow\",{\"follower\":\"tester1\",\"following\":{\"tester3\":\"tester4\"},\"what\":[\"blog\"]}]"
+              "json": "[\"follow\",{\"follower\":\"tester1\",\"following\":{\"gtg\":\"gtg\"},\"what\":[\"blog\"]}]"
             }
           },
           {
@@ -396,7 +396,7 @@
                 "tester1"
               ],
               "id": "follow",
-              "json": "[\"follow\",{\"follower\":\"tester1\",\"following\":[\"tester3\", [\"tester4\"]],\"what\":[\"blog\"]}]"
+              "json": "[\"follow\",{\"follower\":\"tester1\",\"following\":[\"tester3\", [\"gtg\"]],\"what\":[\"blog\"]}]"
             }
           },
           {
@@ -407,7 +407,7 @@
                 "tester1"
               ],
               "id": "follow",
-              "json": "[\"follow\",{\"follower\":[\"tester1\"],\"following\":[\"tester3\", [\"tester4\"]],\"what\":[\"blog\"]}]"
+              "json": "[\"follow\",{\"follower\":[\"tester1\"],\"following\":[\"tester3\", [\"gtg\"]],\"what\":[\"blog\"]}]"
             }
           },
           {
@@ -418,7 +418,7 @@
                 "[\"tester1\"]"
               ],
               "id": "follow",
-              "json": "[\"follow\",{\"follower\":[\"tester1\"],\"following\":[\"tester3\", {\"tester4\":\"tester5\"}],\"what\":[\"blog\"]}]"
+              "json": "[\"follow\",{\"follower\":[\"tester1\"],\"following\":[\"tester3\", {\"gtg\":\"gtg\"}],\"what\":[\"blog\"]}]"
             }
           },
           {
@@ -429,7 +429,7 @@
                 "tester1"
               ],
               "id": "follow",
-              "json": "[\"follow\",{\"follower\":\"tester1\",\"following\":[\"tester3\", {\"tester4\":\"tester5\"}],\"what\":[\"blog\"]}]"
+              "json": "[\"follow\",{\"follower\":\"tester1\",\"following\":[\"tester3\", {\"gtg\":\"gtg\"}],\"what\":[\"blog\"]}]"
             }
           }
         ]