diff --git a/api/config/settings/common.py b/api/config/settings/common.py
index 8af05491fd2b838e69d476e231a2754b56ebdbb0..373c196d66edb07f9a988991ba6059b624ce25c8 100644
--- a/api/config/settings/common.py
+++ b/api/config/settings/common.py
@@ -989,3 +989,5 @@ PODCASTS_THIRD_PARTY_VISIBILITY = env("PODCASTS_THIRD_PARTY_VISIBILITY", default
 PODCASTS_RSS_FEED_REFRESH_DELAY = env.int(
     "PODCASTS_RSS_FEED_REFRESH_DELAY", default=60 * 60 * 24
 )
+# maximum items loaded through XML feed
+PODCASTS_RSS_FEED_MAX_ITEMS = env.int("PODCASTS_RSS_FEED_MAX_ITEMS", default=250)
diff --git a/api/funkwhale_api/audio/serializers.py b/api/funkwhale_api/audio/serializers.py
index 8f46edc9a919df37c35b3e11b8a45196a10f7b43..310176238ac30e2aa4a1cb767f1197284074bba7 100644
--- a/api/funkwhale_api/audio/serializers.py
+++ b/api/funkwhale_api/audio/serializers.py
@@ -366,8 +366,10 @@ def get_channel_from_rss_url(url):
         )
     )
     if parsed_feed.feed.get("rights"):
-        track_defaults["copyright"] = parsed_feed.feed.rights
-    for entry in entries:
+        track_defaults["copyright"] = parsed_feed.feed.rights[
+            : music_models.MAX_LENGTHS["COPYRIGHT"]
+        ]
+    for entry in entries[: settings.PODCASTS_RSS_FEED_MAX_ITEMS]:
         logger.debug("Importing feed item %s", entry.id)
         s = RssFeedItemSerializer(data=entry)
         if not s.is_valid():
@@ -510,7 +512,9 @@ class RssFeedSerializer(serializers.Serializer):
             **artist_kwargs,
             defaults={
                 "attributed_to": service_actor,
-                "name": validated_data["title"],
+                "name": validated_data["title"][
+                    : music_models.MAX_LENGTHS["ARTIST_NAME"]
+                ],
                 "content_category": "podcast",
             },
         )
@@ -695,12 +699,16 @@ class RssFeedItemSerializer(serializers.Serializer):
             {
                 "disc_number": validated_data.get("itunes_season", 1),
                 "position": validated_data.get("itunes_episode", 1),
-                "title": validated_data["title"],
+                "title": validated_data["title"][
+                    : music_models.MAX_LENGTHS["TRACK_TITLE"]
+                ],
                 "artist": channel.artist,
             }
         )
         if "rights" in validated_data:
-            track_defaults["rights"] = validated_data["rights"]
+            track_defaults["rights"] = validated_data["rights"][
+                : music_models.MAX_LENGTHS["COPYRIGHT"]
+            ]
 
         if "published_parsed" in validated_data:
             track_defaults["creation_date"] = datetime.datetime.fromtimestamp(