Migrating from another host

guide · updated 2026-05-26

Most migrations take an afternoon. The slow part is waiting for directories to notice the new feed.

1. Import the back catalogue

Point the importer at your current feed. It downloads each enclosure, keeps the original filename and publication date, and copies title, description, episode and season numbers.

mh import https://oldhost.example/feeds/weekly-show.xml --into weekly-show

fetching feed ........ 112 items
downloading  48/112  ep-065-live-at-the-hall.mp3  (71.2 MB)  ✓
...
done: 112 files, 6.4 GB, 0 failed

Failed items are listed at the end with the reason (usually a 403 from the old host on very old episodes). Re-run with --retry-failed once you've sorted that out.

2. Keep old links alive

If you had a custom hostname at the old provider, point it to us and upload a redirect map. Any request to an old path returns 301 to the new file.

mh redirects import weekly-show ./old-paths.csv

# old-paths.csv
/audio/2024/ep-001.mp3,ep-001-pilot.mp3
/audio/2024/ep-002.mp3,ep-002-the-move.mp3

3. Check, then switch the feed

Run the check command before announcing anything. It fetches every enclosure through the edge, compares byte lengths against the imported feed, and validates the generated XML.

mh feed check weekly-show
  112 enclosures reachable
  112 lengths match
  feed.xml valid (0 warnings)

Then follow the RSS feeds guide for the redirect and itunes:new-feed-url steps. Keep the old account open for at least 30 days.

Things people forget