diff --git a/CHANGELOG b/CHANGELOG
index caef7fc67cfd6628b37fb540c7bc6b616f0243f8..ad7d4e136703799da8d5d626d3282af692566f21 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -120,7 +120,7 @@ Then, add the following block at the end of your docker-compose.yml file::
         - .env
       environment:
         # Override those variables in your .env file if needed
-        - "NGINX_MAX_BODY_SIZE=${NGINX_MAX_BODY_SIZE-30M}"
+        - "NGINX_MAX_BODY_SIZE=${NGINX_MAX_BODY_SIZE-100M}"
       volumes:
         - "./nginx/funkwhale.template:/etc/nginx/conf.d/funkwhale.template:ro"
         - "./nginx/funkwhale_proxy.conf:/etc/nginx/funkwhale_proxy.conf:ro"
diff --git a/changes/changelog.d/654.enhancement b/changes/changelog.d/654.enhancement
new file mode 100644
index 0000000000000000000000000000000000000000..614acf1f75f5dbaf9623e785f90cd983d1d421e0
--- /dev/null
+++ b/changes/changelog.d/654.enhancement
@@ -0,0 +1 @@
+Increased default upload limit from 30 to 100MB (#654)
diff --git a/deploy/apache.conf b/deploy/apache.conf
index 1046615fcbdde2511fdad8444f6b033ff1dfbe8e..f348566a0f08f2458e8acd05899980edd1a576b5 100644
--- a/deploy/apache.conf
+++ b/deploy/apache.conf
@@ -72,8 +72,8 @@ Define MUSIC_DIRECTORY_PATH /srv/funkwhale/data/music
    ProxyPass "/api/v1/activity"  ${funkwhale-api-ws}/api/v1/activity
 
    <Location "/api">
-      # similar to nginx 'client_max_body_size 30M;'
-      LimitRequestBody 31457280
+      # similar to nginx 'client_max_body_size 100M;'
+      LimitRequestBody 104857600
 
       ProxyPass ${funkwhale-api}/api
       ProxyPassReverse ${funkwhale-api}/api
diff --git a/deploy/docker-compose.yml b/deploy/docker-compose.yml
index 399e9d6d36a674100938c921191d1f5a0ef3d1ca..7116a8b9eb92ca74c7db87701329709cc6e09c5e 100644
--- a/deploy/docker-compose.yml
+++ b/deploy/docker-compose.yml
@@ -68,7 +68,7 @@ services:
       - .env
     environment:
       # Override those variables in your .env file if needed
-      - "NGINX_MAX_BODY_SIZE=${NGINX_MAX_BODY_SIZE-30M}"
+      - "NGINX_MAX_BODY_SIZE=${NGINX_MAX_BODY_SIZE-100M}"
     volumes:
       - "./nginx/funkwhale.template:/etc/nginx/conf.d/funkwhale.template:ro"
       - "./nginx/funkwhale_proxy.conf:/etc/nginx/funkwhale_proxy.conf:ro"
diff --git a/deploy/env.prod.sample b/deploy/env.prod.sample
index b5f602d47bb62396de576a8a7d3ab2bb8783f113..bb7d6cd08cf5d93d8c65028d966edd30a4fc7a10 100644
--- a/deploy/env.prod.sample
+++ b/deploy/env.prod.sample
@@ -135,4 +135,4 @@ MUSIC_DIRECTORY_SERVE_PATH=/srv/funkwhale/data/music
 FUNKWHALE_FRONTEND_PATH=/srv/funkwhale/front/dist
 
 # Nginx related configuration
-NGINX_MAX_BODY_SIZE=30M
+NGINX_MAX_BODY_SIZE=100M
diff --git a/dev.yml b/dev.yml
index dc931386e229afa0c4e737347fee442ead47a7a0..bd9808c53969c1242bcbb38c397c1cec99980df1 100644
--- a/dev.yml
+++ b/dev.yml
@@ -94,7 +94,7 @@ services:
       - .env
     image: nginx
     environment:
-      - "NGINX_MAX_BODY_SIZE=${NGINX_MAX_BODY_SIZE-30M}"
+      - "NGINX_MAX_BODY_SIZE=${NGINX_MAX_BODY_SIZE-100M}"
       - "FUNKWHALE_API_IP=${FUNKHALE_API_IP-api}"
       - "FUNKWHALE_API_PORT=${FUNKWHALE_API_PORT-5000}"
       - "FUNKWHALE_FRONT_IP=${FUNKHALE_FRONT_IP-front}"
diff --git a/docker/nginx/conf.dev b/docker/nginx/conf.dev
index 3e7a3515a6d9b81fb3a95c348f5f51de899879be..ecb1c1d0c57293da2681d1254ec3cc960a8dbd17 100644
--- a/docker/nginx/conf.dev
+++ b/docker/nginx/conf.dev
@@ -41,7 +41,7 @@ http {
     server {
         listen 80;
         charset     utf-8;
-        client_max_body_size 30M;
+        client_max_body_size 100M;
         include /etc/nginx/funkwhale_proxy.conf;
         # compression settings
         gzip on;