diff --git a/changelog.d/10415.misc b/changelog.d/10415.misc
new file mode 100644
index 0000000000000000000000000000000000000000..3b9501acbbcbfc20c5acc42e65b545cc262ddc30
--- /dev/null
+++ b/changelog.d/10415.misc
@@ -0,0 +1 @@
+Remove shebang line from module files.
diff --git a/synapse/_scripts/review_recent_signups.py b/synapse/_scripts/review_recent_signups.py
index 01dc0c42377f88ba5a9fd1560e9a7e9754b7b6b0..9de913db889cd654f0f0efbc919e4049968bfacd 100644
--- a/synapse/_scripts/review_recent_signups.py
+++ b/synapse/_scripts/review_recent_signups.py
@@ -1,4 +1,3 @@
-#!/usr/bin/env python
 # Copyright 2021 The Matrix.org Foundation C.I.C.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
diff --git a/synapse/app/admin_cmd.py b/synapse/app/admin_cmd.py
index 2878d2c14077dd10fa9363fba34b265c6b05a396..3234d9ebba071ee42029fec977d33e6052752f81 100644
--- a/synapse/app/admin_cmd.py
+++ b/synapse/app/admin_cmd.py
@@ -1,4 +1,3 @@
-#!/usr/bin/env python
 # Copyright 2019 Matrix.org Foundation C.I.C.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
diff --git a/synapse/app/appservice.py b/synapse/app/appservice.py
index 2d50060ffb0ba145628b20fca2bc8dd7eca00593..de1bcee0a78515ee4e46b2c7f56b4830f18599bc 100644
--- a/synapse/app/appservice.py
+++ b/synapse/app/appservice.py
@@ -1,4 +1,3 @@
-#!/usr/bin/env python
 # Copyright 2016 OpenMarket Ltd
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
diff --git a/synapse/app/client_reader.py b/synapse/app/client_reader.py
index 2d50060ffb0ba145628b20fca2bc8dd7eca00593..de1bcee0a78515ee4e46b2c7f56b4830f18599bc 100644
--- a/synapse/app/client_reader.py
+++ b/synapse/app/client_reader.py
@@ -1,4 +1,3 @@
-#!/usr/bin/env python
 # Copyright 2016 OpenMarket Ltd
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
diff --git a/synapse/app/event_creator.py b/synapse/app/event_creator.py
index 57af28f10a57c326aa499041e1250ae6d9ea710b..885454ed44c0a17830c623ffda084601054f1eaa 100644
--- a/synapse/app/event_creator.py
+++ b/synapse/app/event_creator.py
@@ -1,4 +1,3 @@
-#!/usr/bin/env python
 # Copyright 2018 New Vector Ltd
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
diff --git a/synapse/app/federation_reader.py b/synapse/app/federation_reader.py
index 2d50060ffb0ba145628b20fca2bc8dd7eca00593..de1bcee0a78515ee4e46b2c7f56b4830f18599bc 100644
--- a/synapse/app/federation_reader.py
+++ b/synapse/app/federation_reader.py
@@ -1,4 +1,3 @@
-#!/usr/bin/env python
 # Copyright 2016 OpenMarket Ltd
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
diff --git a/synapse/app/federation_sender.py b/synapse/app/federation_sender.py
index 2d50060ffb0ba145628b20fca2bc8dd7eca00593..de1bcee0a78515ee4e46b2c7f56b4830f18599bc 100644
--- a/synapse/app/federation_sender.py
+++ b/synapse/app/federation_sender.py
@@ -1,4 +1,3 @@
-#!/usr/bin/env python
 # Copyright 2016 OpenMarket Ltd
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
diff --git a/synapse/app/frontend_proxy.py b/synapse/app/frontend_proxy.py
index 2d50060ffb0ba145628b20fca2bc8dd7eca00593..de1bcee0a78515ee4e46b2c7f56b4830f18599bc 100644
--- a/synapse/app/frontend_proxy.py
+++ b/synapse/app/frontend_proxy.py
@@ -1,4 +1,3 @@
-#!/usr/bin/env python
 # Copyright 2016 OpenMarket Ltd
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
diff --git a/synapse/app/generic_worker.py b/synapse/app/generic_worker.py
index c3d49925189e40416ed25b894a8eff6c9209b8fc..3b7131af8fa2030ba5afdcb3f0937abdeeb167e8 100644
--- a/synapse/app/generic_worker.py
+++ b/synapse/app/generic_worker.py
@@ -1,4 +1,3 @@
-#!/usr/bin/env python
 # Copyright 2016 OpenMarket Ltd
 # Copyright 2020 The Matrix.org Foundation C.I.C.
 #
diff --git a/synapse/app/homeserver.py b/synapse/app/homeserver.py
index 920b34d97bf452d3024a805feb563e43c1738321..7dae163c1af3fdd0e1af13b708382672886fb1ae 100644
--- a/synapse/app/homeserver.py
+++ b/synapse/app/homeserver.py
@@ -1,4 +1,3 @@
-#!/usr/bin/env python
 # Copyright 2014-2016 OpenMarket Ltd
 # Copyright 2019 New Vector Ltd
 #
diff --git a/synapse/app/media_repository.py b/synapse/app/media_repository.py
index 2d50060ffb0ba145628b20fca2bc8dd7eca00593..de1bcee0a78515ee4e46b2c7f56b4830f18599bc 100644
--- a/synapse/app/media_repository.py
+++ b/synapse/app/media_repository.py
@@ -1,4 +1,3 @@
-#!/usr/bin/env python
 # Copyright 2016 OpenMarket Ltd
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
diff --git a/synapse/app/pusher.py b/synapse/app/pusher.py
index 2d50060ffb0ba145628b20fca2bc8dd7eca00593..de1bcee0a78515ee4e46b2c7f56b4830f18599bc 100644
--- a/synapse/app/pusher.py
+++ b/synapse/app/pusher.py
@@ -1,4 +1,3 @@
-#!/usr/bin/env python
 # Copyright 2016 OpenMarket Ltd
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
diff --git a/synapse/app/synchrotron.py b/synapse/app/synchrotron.py
index 2d50060ffb0ba145628b20fca2bc8dd7eca00593..de1bcee0a78515ee4e46b2c7f56b4830f18599bc 100644
--- a/synapse/app/synchrotron.py
+++ b/synapse/app/synchrotron.py
@@ -1,4 +1,3 @@
-#!/usr/bin/env python
 # Copyright 2016 OpenMarket Ltd
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
diff --git a/synapse/app/user_dir.py b/synapse/app/user_dir.py
index a368efb354edfa874bd0ac67fb533aa6060c27f7..14bde27179437502c0c4308b79a06227b7e526af 100644
--- a/synapse/app/user_dir.py
+++ b/synapse/app/user_dir.py
@@ -1,4 +1,3 @@
-#!/usr/bin/env python
 # Copyright 2017 Vector Creations Ltd
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
diff --git a/synapse/push/pusherpool.py b/synapse/push/pusherpool.py
index 85621f33ef1e4056e1be194096b03e1724ecd30f..a1436f39305d255a195e26cfe7aba401b8333127 100644
--- a/synapse/push/pusherpool.py
+++ b/synapse/push/pusherpool.py
@@ -1,4 +1,3 @@
-#!/usr/bin/env python
 # Copyright 2015, 2016 OpenMarket Ltd
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
diff --git a/synapse/util/versionstring.py b/synapse/util/versionstring.py
index dfa30a62296a7717bf017dc3033a4a57aa143732..cb08af7385eb034392e73a4906f1db7e91b49aa2 100644
--- a/synapse/util/versionstring.py
+++ b/synapse/util/versionstring.py
@@ -1,4 +1,3 @@
-#!/usr/bin/env python
 # Copyright 2016 OpenMarket Ltd
 #
 # Licensed under the Apache License, Version 2.0 (the "License");