Why Twitter Links are Broken

It is well known that Twitter enforces a maximum size of 140 characters per tweet. While completely arbitrary (originally chosen for SMS compatibility), this limit is part of the charm, identity and appealing simplicity of the service (ignoring those that choose to annoyingly tweet long paragraphs as multiple tweets).

But Twitter also doesn’t have any concept of structured data or attachments associated with a tweet, which means that links have to be posted in the body of the tweet content. Aside from causing ugly looking content, this also causes a problem with long URLs that use up most of the 140 characters.

Twitter originally left the solution to this problem (shortening of links via an intermediary link) to third party services like http://tinyurl.com/ (and then http://bit.ly/ for those desperate to save another four characters).

However, more recently Twitter implemented its own link shortening service that converts all links to the form http://t.co/abcdefgh.  Twitter describes this new service as follows – “Twitter uses the t.co domain as part of a service to protect users from harmful activity, to provide value for the developer ecosystem, and as a quality signal for surfacing relevant, interesting Tweets.” – whatever that means.

Here’s why this t.co approach is completely broken:

  1. First of all, link shortening is now not only automatic but is also enforced – you can no longer insert a link that is NOT shortened. This doesn’t make sense and Twitter’s rationale is weak, but by enforcing link shortening it just magnifies the impact of all the related issues that follow below.
  2. “Shortened” links can actually get longer (“visit priocept.com” becomes “visit http://t.co/abcdefgh” which increases the link size from 12 to 20 characters!).  Twitter originally only implemented link shortening on links of 19 characters or longer.  But now they just “shorten” everything regardless.
  3. Shortened links also means that references to brand names that look like web addresses get messed up and the brand name is lost, for example the tweet “I just checked out brandname.co.uk – great site” becomes “I just checked out http://t.co/abcdefgh – great site” which loses all its context and actually loses all value completely if you are offline and can’t click the link to find out where the link goes to. If you have a company name that ends in .com then you’ll have to put it in quotes every time or Twitter is going to strip your company name out!  Twitter claim that the original link will still be shown, but this doesn’t apply if you are viewing the tweet from a third-party application that doesn’t implement the “unshortening” process.
  4. The reliance on the .co top level domain (assigned to the Republic of Colombia) is also very strange and unwise. Here we have a key piece of internet infrastructure used by millions and it relies on a domain run by Colombia? Who could presumably switch off the t.co service if they chose to?
  5. Next there are the security implications of shortening links and hiding their ultimate destination. If I see a link to companyname.com, then I can take a view on whether I trust that company and wish to follow the link. But if I see http://t.co/abcdefgh then I have no knowledge of where I am going to end up and if it is a safe site to visit. So I have to fall back to trusting the tweeter who posted the link.
  6. Next there is the issue of information loss with the use of t.co links. If I archive Twitter feeds, then there is a chance that in years to come when I look back at those Tweets, that any t.co links may not work. The domain may no longer exist, the service may have been taken down by Twitter, or Twitter may not even exist as a company any more. And if you think this seems likely, consider that historians could be reading through today’s tweets hundreds of years from now. Samuel Pepys’s diary wouldn’t be much use to us now if it contained content like “today I walked down abcdefgh street” and the lookup from abcdefgh to the real street name had been lost in the intervening hundreds of years.

But ultimately, the main reason that the whole t.co approach is truly broken is that it is a copy of a workaround implemented by tinyurl.com, bit.ly, etc. Twitter own the underlying platform so could have implemented a better solution rather than just copying someone else’s solution.

Why did they not just simply add support for structured metadata attached to a tweet? Then we could have links that were separate from the body of the tweet. This would eliminate the whole link shortening business, and also allow for big improvements in the user experience and readability of tweets by moving all that nasty http:// mess out of the body of the content.  Even the inventor of aitch-tee-tee-pee-colon-double-slash admits that it is a bit of a mess so we should be trying to use it less not more!

As one of the internet’s key services and most iconic brands, we should expect more innovation from Twitter and more focus on the user experience.

Leave a Comment