The Host's Casebook / The podcast whose episodes lived on a free plan

The podcast whose episodes lived on a free plan

CASEBOOK

5 min read · 1,080 words

A note on authenticity. This is a composite story written by the editors, built from situations that come up again and again. It is not the account of a particular named person or business. Real reader stories go through the submission page and are marked as reader-submitted.

A hobby podcaster recorded a weekly show about restoring vintage bicycles. He had no budget for podcast hosting, so he did what many beginners do: he uploaded each episode's audio file to the free website plan he already had, wrote the feed by hand, and submitted its address to the directories. The audience was a few hundred people. Everything worked, and he got into the habit of thinking of hosting as a solved problem.

One Thursday a much larger show mentioned his latest episode, with a recommendation and a link. Within a day, thousands of people tried to download it. By the evening his feed was returning errors, and the next morning the whole account was suspended. This is a fictional composite, but the arithmetic behind it is real, and so is the way he recovered.

The case has two halves: why the free plan failed so fast, and why the rescue was possible at all.

How the show was set up

A podcast is, mechanically, an RSS feed: an XML file listing episodes, each with a title, a date and a URL for an audio file. Listening apps fetch the feed on a schedule, notice new items, and download the audio from the URL in each item. There is no special podcast protocol beyond that. Anyone who can serve an XML file and some MP3s can run a show.

He had both on one site. The feed lived at https://example.com/feed.xml, the audio at https://example.com/audio/ep42.mp3, and the free plan served them as ordinary static files. The plan included a modest monthly bandwidth allowance, which he had never looked at because he had never come near it.

Podcast app APodcast app BDirectoriesFree website planfeed.xml + audio/*.mp3monthly bandwidth capListener
Both the feed and the heavy audio files came from a single small plan, so one limit governed everything.

The arithmetic of a spike

Audio is heavy compared with web pages. A forty-minute episode at a typical spoken-word bitrate of 64 kbit/s comes to roughly 19 MB; at 128 kbit/s it is nearer 38 MB. Say his files were around 30 MB each (an example figure). A hundred downloads a week costs about 3 GB of transfer, which almost any plan will carry without complaint.

Now apply the spike. If five thousand people fetch that one episode in a day, the transfer is about 150 GB. Many free or entry-level plans allow only a few tens of gigabytes per month, some far less. At that rate the monthly allowance vanished in a few hours.

Scenario (illustrative)DownloadsEpisode sizeTransfer
Normal week15030 MBabout 4.5 GB
Mentioned by a bigger show, first day5,00030 MBabout 150 GB
Same, plus back-catalogue downloads8,00030 MBabout 240 GB

Podcast apps add to the load in a way that surprises newcomers. Many download new episodes automatically in the background, so a mention is not the only source of traffic: every subscriber with auto-download enabled fetches the file regardless of listening. Apps also poll the feed itself repeatedly, and a feed that returns an error gets retried.

What went wrong, in order

The failure unfolded in stages, and each stage made the next one worse.

  1. The mention went out in the morning. Downloads climbed steadily through the day.
  2. By mid-afternoon the plan's monthly bandwidth was spent. The host suspended the account, as its terms allowed.
  3. Requests for the audio started returning an error page, which the apps tried to save as if it were an MP3 and then reported as a failed download.
  4. The feed itself, on the same site, also failed. Apps that could no longer read it showed the show as broken or empty.
  5. Directories that revalidate feeds saw the errors. A few flagged the show as unreachable.
  6. People who had arrived curious, with no history of the show, took the error as the show's quality and drifted away. Some existing subscribers removed it.
An error page returned for an audio URL is the worst kind of failure for a podcast. The app has no way to tell that the bytes it received are not audio, and the listener sees a broken episode rather than a temporary outage.

The podcaster's first move was to email the host and ask for a bandwidth increase. The answer, reasonably, was that the free plan could not be extended and that he would need to upgrade a paid tier. By the time he read it, the burst was already over, and the damage was done.

The rescue: moving without losing subscribers

The hopeful part of the story is that the audience did not need to do anything. Subscribers had not subscribed to a file. They had subscribed to a feed address on his own domain, and he controlled that domain. That one choice, made months earlier almost by accident, turned a catastrophe into an afternoon of work.

He chose a podcast host that charges a flat monthly price with generous bandwidth and episode statistics. The migration followed the usual order:

  1. Upload the back catalogue to the new host, which generates a new feed.
  2. Check the new feed in two or three listening apps and in a feed validator, looking at episode titles, dates, durations and artwork.
  3. Make the old address redirect to the new feed with a permanent redirect. The redirect generator produces the right rules for most servers.
  4. Keep the old audio URLs redirecting to the matching files at the new host, so old episodes still play from cached feeds.
  5. Where the new host supports it, mark the feed as moved using the standard feed-redirect tag, so that apps update their stored address.

The permanent redirect in a typical setup looks like this on Apache:

Redirect 301 /feed.xml https://feeds.example.net/bikeshow/rss
RedirectMatch 301 ^/audio/(.*)$ https://media.example.net/bikeshow/$1

Because the free plan was suspended, the redirects could only take effect after he moved the domain itself to hosting that was still running, which cost him a day. Had the feed address been on a subdomain such as a free provider's address, he would have lost every subscriber, since nobody could redirect it for him.

Why owning the feed address matters

Feed on a host's own addressFeed on your own domainhost.example/shows/12Host moves or closesSubscribers are strandedexample.com/feed.xmlRedirect to new hostSubscribers follow automatically
The address subscribers store decides if the show can ever move.

This is the single most valuable habit in podcasting, and it costs nothing. Whatever host you choose, publish the feed under a domain you own and point that address at the host's feed. Treat the host as replaceable. Directories and apps then store your address, and you can swap the engine under it whenever you like.

PreviousThe translator who lost her portfolio to a lapsed planNextThe estate agent and the twelve-megabyte slideshow

More from The Host's Casebook

Composite case

The blogger and the vanishing domain

A food blogger had run her site for six years. The domain was renewed automatically every year with a card...

Composite case

The nonprofit site that only one volunteer understood

A community garden's website was built by a volunteer who knew what he was doing and kept everything in his...

Composite case

The translator who lost her portfolio to a lapsed plan

A freelance translator paid for hosting annually. The renewal notice went to an old email address she no...