diff --git a/planetstack/openstack_observer/steps/sync_users.py b/planetstack/openstack_observer/steps/sync_users.py
index 3c69cad..4cb1a26 100644
--- a/planetstack/openstack_observer/steps/sync_users.py
+++ b/planetstack/openstack_observer/steps/sync_users.py
@@ -5,20 +5,20 @@
 from planetstack.config import Config
 from observer.openstacksyncstep import OpenStackSyncStep
 from core.models.user import User
-from core.models.controllerusers import  ControllerUsers
-from observer.steps.sync_controller_users import SyncControllerUsers
+from core.models.controllerusers import  ControllerUser
+from observer.steps.sync_controller_users import SyncControllerUser
 
 class SyncUsers(OpenStackSyncStep):
     provides=[User]
     requested_interval=0
 
     def sync_record(self, user):
-        for controller_user in ControllerUsers.objects.filter(user=user):
+        for controller_user in ControllerUser.objects.filter(user=user):
             # bump the 'updated' field so user account are updated across 
             # controllers.
             controller_user.save()
 
     def delete_record(self, user):
-        controller_user_deleter = SyncControllerUsers().delete_record
-        for controller_user in ControllerUsers.objects.filter(user=user):
+        controller_user_deleter = SyncControllerUser().delete_record
+        for controller_user in ControllerUser.objects.filter(user=user):
             controller_user_deleter(controller_user)
