Twitter recently rolled out their own url shortener t.co. Any link over 13 characters gets shortened (or if it is between 13 and 16 characters lengthened!) using a t.co domain. Their eventual aim is to shorten every URL with t.co.
If you are using the Twitter website, the implementation is OK – because (I think) of the use of “Tweet Entitites“. This is metadata that highlights the fact that it is a web address, and expands it (though a little esoterically) – so you can see where the link points to.
HOWEVER, I keep hitting problems with t.co. And it is annoying me. So here is a rant about why I hate t.co:
- It screws up analysis:On a (semi) regular basis I have to analyse the impact of a particular twitter trend or campaign. I do this by gathering as many tweets as I can from the twitter search api, either using an excel spreadsheet I have written that scrapes the ATOM (XML) feed, or using tweetreach. Many of these tweets contain hyperlinks, and it is an important metric to know where these links are pointing. For instance I might like to know whether the BBC website news story about a campaign received more tweets than the Sky news story.If the links are shortened with bit.ly (either directly, or using their vanity service – for instance bbc.in) I could then use the bit.ly API to find out number of clicks, number of clicks from that specific tweet link etc – all really useful stuff.The search API returns t.co addresses, not the expanded URLs. The search API doesn’t use entities, and there is no API to resolve t.co into the original URL. I have to resolve each t.co in my results by hand – which is a pain in the ####!
- It has broken a lot of apps. This morning I was trying to send a link to someone through tweetcast on my Android phone. I used the webbrowser to find the page, copied the URL, pasted it into Tweetcast and pressed “send”. Tweetcast converts the link to a Bit.ly, then twitter converts the bit.ly to a t.co (inefficient!). When I tested the link in the posted tweet, I hit the bit.ly 404 page. I tried (and failed) again using the “tweet this” button on the original page. To pile on the inefficiencies, this shortened the URL to a TNW.co domain, which (I think) was then shortened to a bit.ly, which was shortened to a t.co…..! Again it didn’t work (bit.ly 404).
I know that this is a failure of Tweetcast, not twitter, and it will probably be solved sometime soon, but there have been an awful lot of broken links on twitter recently.
- HTTP is no longer included in the text of a tweet – so it is harder to RT with comments, or copy to a text file. You can no longer just “copy and paste” a tweet, and retain the links. The text no longer contains the “http” which tells word, or certain twitter apps, that the tweet contains a link. This makes it harder to do an old style RT, a RT with comment, a MT (modified tweet) or even a copy and paste to save for later. That means many more broken links on twitter…
- T.Co is easy to block. If you run an oppressive regime, or just want to disable much of twitter’s functionality within a workplace, you can easily block the domain t.co… While China have struggled to block twitter access (due to the large number of third party apps available), they have succeeded in blocking t.co. Because all clicks have to go through the t.co server, it is now difficult to share links on Twitter in China.
- T.Co doesn’t tell you where it is going! If you see a nyti.ms, a bbc.in link or a youtu.be link, you know where you are headed. I won’t click a youtu.be link from my phone as my data plan won’t support it. One of the reasons for t.co is to detect malicious sites and alert users, but there is other information that a link tells you which t.co obscures. On some apps, the “URL Entity” solves this (the target name is nyti.ms but the href is t.co), but in RSS, some ATOM links and many other apps the href and the target name is the same.However, if twitter was email, the URL Entity solution would be marked as Spam (because the target and name point to different domains). How this affects tweets sent to you be email (e.g. “You’ve been mentioned” emails) I am not sure, as I haven’t had a chance to check it yet.