diff --git a/docs/companion-installation.md b/docs/companion-installation.md
index 82c5173..1822a4d 100644
--- a/docs/companion-installation.md
+++ b/docs/companion-installation.md
@@ -384,6 +384,7 @@ AND make sure to add these new routes into your reverse proxy, example in variou
 - [NGINX](./companion-nginx.md)
 - [Apache2](./companion-apache2.md)
 - [Caddy](./companion-caddy.md)
+- [Traefik](./companion-traefik.md)
 
 ## Update Invidious
 
diff --git a/docs/companion-traefik.md b/docs/companion-traefik.md
new file mode 100644
index 0000000..2c2da77
--- /dev/null
+++ b/docs/companion-traefik.md
@@ -0,0 +1,27 @@
+# Traefik reverse proxy setup with Invidious companion
+
+This is a very basic config, assuming that you're using Traefik to manage SSL certificates for you, and Traefik is on the same server as the Invidious and companion container.
+Do not forget to replace `<server_name>` with your domain.
+
+**Invidious Setup**
+```
+...
+    labels:
+      - "traefik.enable=true"
+      - "traefik.http.routers.invidious.rule=Host(`<server_name>`) && !(Path(`/latest_version`) || PathPrefix(`/api/manifest/dash/id/`) || PathPrefix(`/videoplayback*`))"
+      - "traefik.http.routers.invidious.entrypoints=web-sec"
+      - "traefik.http.routers.invidious.tls.certresolver=le"
+      - "traefik.http.services.invidious.loadbalancer.server.port=3000"
+...
+```
+**Companion Setup**
+```
+...
+    labels:
+      - "traefik.enable=true"
+      - "traefik.http.routers.invidious-companion.rule=Host(`<server_name>`) && (Path(`/latest_version`) || PathPrefix(`/api/manifest/dash/id/`) || PathPrefix(`/videoplayback*`))"
+      - "traefik.http.routers.invidious-companion.entrypoints=web-sec"
+      - "traefik.http.routers.invidious-companion.tls.certresolver=le"
+      - "traefik.http.services.invidious-companion.loadbalancer.server.port=8282"
+...
+```