diff --git a/inventory_provider/tasks/worker.py b/inventory_provider/tasks/worker.py
index bbbd593402dccc676dd9c70c1a22c64b2d35a9ed..3f8b7b21bfdd84b6141887a2346df22093b87d0f 100644
--- a/inventory_provider/tasks/worker.py
+++ b/inventory_provider/tasks/worker.py
@@ -1077,9 +1077,10 @@ def persist_ims_data(data, use_current=False):
     sid_services = data['sid_services']
 
     def _get_pops():
-        # de-dupe the sites
+        # de-dupe the sites (by abbreviation)
         pops = {
-            equip['pop']['name']: equip['pop'] for equip in locations.values()}
+            equip['pop']['abbreviation']: equip['pop']
+            for equip in locations.values()}
         return pops.values()
 
     if use_current:
@@ -1110,7 +1111,7 @@ def persist_ims_data(data, use_current=False):
     for h, d in locations.items():
         rp.set(f'ims:location:{h}', json.dumps([d]))
     for pop in _get_pops():
-        rp.set(f'ims:pop:{pop["name"]}', json.dumps(pop))
+        rp.set(f'ims:pop:{pop["abbreviation"]}', json.dumps(pop))
     rp.execute()
     rp = r.pipeline()
     for router in lg_routers: