diff --git a/synapse/federation/persistence.py b/synapse/federation/persistence.py
index b04fbb4177862e4f41c304f7752d3e75a4cb735b..73dc844d59f5557326b300ec79536f5328461ffe 100644
--- a/synapse/federation/persistence.py
+++ b/synapse/federation/persistence.py
@@ -21,8 +21,6 @@ These actions are mostly only used by the :py:mod:`.replication` module.
 
 from twisted.internet import defer
 
-from .units import Pdu
-
 from synapse.util.logutils import log_function
 
 import json
diff --git a/synapse/federation/units.py b/synapse/federation/units.py
index c2d8dca8f36ef44d51d4589daad25df4a0ec39df..9b255567073b70bb0c443d1f97af52865824e059 100644
--- a/synapse/federation/units.py
+++ b/synapse/federation/units.py
@@ -18,11 +18,8 @@ server protocol.
 """
 
 from synapse.util.jsonobject import JsonEncodedObject
-from syutil.base64util import encode_base64
 
 import logging
-import json
-import copy
 
 
 logger = logging.getLogger(__name__)
diff --git a/synapse/handlers/federation.py b/synapse/handlers/federation.py
index bdd28f04bb1d1f57c373161277b2b4835a2cad43..49bfff88a4fd3462db0af2650e5ed24788d5153f 100644
--- a/synapse/handlers/federation.py
+++ b/synapse/handlers/federation.py
@@ -17,15 +17,13 @@
 
 from ._base import BaseHandler
 
-from synapse.api.events.room import InviteJoinEvent, RoomMemberEvent
+from synapse.api.events.room import RoomMemberEvent
 from synapse.api.constants import Membership
 from synapse.util.logutils import log_function
 from synapse.federation.pdu_codec import PduCodec
-from synapse.api.errors import SynapseError
 from synapse.util.async import run_on_reactor
-from synapse.types import EventID
 
-from twisted.internet import defer, reactor
+from twisted.internet import defer
 
 import logging
 
diff --git a/synapse/state.py b/synapse/state.py
index f4efc287c9d19e757b240fd0eaca39abda684151..9771883bc3ed2e6f730a69c7fca8ec3135a8788b 100644
--- a/synapse/state.py
+++ b/synapse/state.py
@@ -19,8 +19,6 @@ from twisted.internet import defer
 from synapse.util.logutils import log_function
 from synapse.util.async import run_on_reactor
 
-from synapse.types import EventID
-
 from collections import namedtuple
 
 import copy
diff --git a/synapse/storage/_base.py b/synapse/storage/_base.py
index 464b12f0325be624b284161d1d3a44732173c566..5e00c23fd1d22387a4c1311308b5008acfa5bb87 100644
--- a/synapse/storage/_base.py
+++ b/synapse/storage/_base.py
@@ -14,8 +14,6 @@
 # limitations under the License.
 import logging
 
-from twisted.internet import defer
-
 from synapse.api.errors import StoreError
 from synapse.api.events.utils import prune_event
 from synapse.util.logutils import log_function