A Sea Shanty.

This is a story of a tweet. It’s a story of ad blockers, ad tech, brittle prefixes, honest mistakes, and a shanty, but all that manifests as the story of a tweet.

This isn’t a doctored video, from approximately 10:41 am to 1:00 pm ET on March 29th; if you downloaded one of a few shows from Kast Media, every episode would be the Wellerman sea shanty.

It’s the perfect tweet. It @s someone who can’t help with a mix of confusion and acknowledgment. The author understands the reference and knows someone is being an idiot on the internet.

I am the idiot.

To understand how we got here, we have to go back to a commit to a Github repository about a month prior.

On March 1st, 2020, the user jawz101 added the domain chtbl.com to the AdAway hosts file. AdAway is one of many domain lists that are just that; giant lists of domains the maintainer feels worthy of blocking from the internet. This AdAway hosts list is one of many that feeds into DNS level blockers like Pi-Hole and the Andriod app AdGuard. There appear to be earlier instances of the chtbl domain being blocked, but the best I can tell this is what broke the camel’s back.

Chartable did not deserve to be on this list, and they were removed less than 20 days later, but that didn’t matter.

We have to take a quick aside now to learn about analytics prefixes in podcasting. You can think of an analytics prefix as a bit.ly redirect for podcasts. When you download a podcast in the Apple Podcasts app, you aren’t downloading it from Apple; you are downloading it from the host. Hosting providers added an analytics prefix field to allow third parties like rankers and attribution providers an easy integration point. It’s a game of roulette for a publisher. Get it right, and you are at the top of the charts. Get it wrong, and no one can listen to your podcast.

Since Chartable’s prefix “chtbl.com” was added to a blocklist, the DNS level blockers, by design, started to block all podcast downloads with the Chartable prefix. It was if bit.ly got blocked from Twitter. The tweet would still be there, but when you clicked the link, it would be dead. Users, unaware of the technical details of podcasting, started to complain to their podcasting apps that they couldn’t download episodes.

Overcast was the first one to get a little fed up with the whole ordeal. Marco decided to run an experiment to strip analytics prefixes out of episode URLs bypassing these services altogether in a somewhat knee-jerk reaction. The experiment was quickly abandoned, but the damage was done. Chartable felt the need to change their prefix domain from chtbl.com to chrt.fm to avoid the blocklists.

A peculiar choice; why not just use chtbl.fm? chtbl.com and chrt.fm are close enough, so one might think they just need to change .com to .fm. Remember that analytics prefixes are manually entered, so a slight error could cause a fast-moving account manager to breeze right over the domain spelling change.

Chartable didn’t buy the chtbl.fm domain. If there was a mixup, the episode would appear as dead air, making it hard to track down. If, say, it was to redirect to Wellerman audio, then users would catch the mistake pretty quickly.

Being a good internet samaritan, I bought the domain set up a quick redirect. Why not just alert Chartable? Well, I’ve been stuck inside for the last year and need a little joy in my life. I checked it fairly often for the first few days, but nothing. My mixup theory was bogus. I forgot about it for a couple of weeks, and then it happened.

At 10:41 am on March 29th, an employee at Kast Media made an innocent mistake. They knew they should update to Chartable’s newly unblocked domain but did not catch it was more than just changing the .com to .fm.

A sea shanty was sung.


The best I can tell, less than a thousand downloads were affected. I’ve reached out to Dave, who continues to be one of the nicest people in podcasting, to transfer the domain over to Chartable.

There isn’t a lesson to be learned here, no conspiracy, just some internet shenanigans, carry on.


Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store