How to Fix URL Shorteners – My Take

August 30th, 2009

The legendary @davewiner has recently written a couple articles about how to fix URL shorteners.

How to fix URL-shorteners
How to fix URL-shorteners, part II

Dave’s solution involves using Adjix with his own short domain to create and track the short URLs. He also duplicates all the shortened URLs to an Amazon AWS S3 bucket. If Adjix ever goes away, or he becomes unhappy with their service he can repoint his own domain to his AWS S3 bucket and the short URLs will continue to work. It won’t be as easy to create new short URLs or track the traffic they get, but the URLs will continue to work.

After reading yet another TechCrunch article about yet another URL-shortener that offers nothing new and thinking about’s Dave’s suggestions I had an idea for something new in the world of URL shorteners….

Personal Shortened Subdomains

Instead of shorteneing only the path part of the URL, I propose adding a shortened, personalized subdomain unique to each user. As you will see by reading the rest of this post, there will be many benefits to this. The DNS would use a wildcard DNS record so the DNS would not need to be modified for each new user.

Users would be able to select their own vanity subdomain, their initials, their name, etc. or the shortest available domain would be assigned to them.

Even shorter paths

If every user has their own subdomain the path portion of the URL can be even shorter. Instead of needing to be unique across all users, it only needs to be unique for that user. If we use a character set of A-Z, a-z, and 0-9 the path portion for each user’s first 62 URLs will be a single character. Of course this comes at the expense of requiring a subdomain. Don’t bail on me yet, there are other advantages to the path being unique only to your subdomain.

Looking at the links Dave Winer has posted since implementing his new URL-shortener it looks like his paths are unique across all Adjix links, so instead of being one or two characters, they are four characters. The more other people use Adjix, the longer his URLs will become.

Link authority

A problem with URL-shorteners is most do not reveal what the destination is, or if the content is safe. With my proposed link shortener because each user’s subdomain is unique and the path is unique only to that subdomain you can rest assured that gk.ur.ls is a link from Guy Kawaski or dw.ur.ls is a link from Dave Winer and therefore fairly safe for you to visit. (ur.ls is just an example short domain, I wish it were available.)

Dave’s solution may give the false impression of this, but since his paths are unique to all of Adjix and his domain is a CNAME of adjix.com you can put an Adjix path for a link he didn’t create after his domain and the link will redirect properly. Thus giving the false impression that a URL like http://c.oy.ly/gek7 is his, when it isn’t. With this proposed URL shortener since the path would be unique only to the personal subdomain, every link that goes through that subdomain will have been created by the owner of that subdomain.

Homepage of your personal subdomain shows stats for all your recent URLs

Because the subdomain is unique to the user you could easily make the homepage of that subdomain show information about that user and show public stats for the domains he links to. With existing shorteners there is no obvious way to do this since everyone shares the same pool of paths and domain. Even for Dave’s domain which is unique, http://c.oy.ly is the Adjix.com homepage, rather than anything specific to him or his domain, because his domain is just a CNAME of Adjix.com

People could go to the homepage of your personal subdomain and get stats for the URLs you have been linking to. It could be like Dave Winer’s 40 Twits showing the 40 most recent URLs you have shortened and how many clicks they have received. It could also be a more in-depth page like Digg or TweetMeme showing page titles and snippets along with the number of clicks.

Redirect a domain you own to your personal subdomain

A major concern since tr.im announced they were shutting down (and then later changed their mind) is the persistence of shortened URLs. The first step required in having URLs that can outlive the shortener is using your own domain. You would be able to create a CNAME record for a domain you own, or redirect a domain you own to your personal subdomain on this new URL shortener. Then the links you post would be to a domain you control and they would go through this URL shortener for tracking and management.

Export your links and redirect your personal domain

The reverse of this would also be available. If you have used this new shortener and decided to take your link management to your own server, or to another similar shortener you would be able to export your links in a number of formats, XML, Apache redirects, .html files with meta redirects, etc. Once you set these paths up on your new service you would tell the existing shortener to redirect all requests for your domain to the new service. If you were using a domain you owned and redirecting to the shortener you would simply need to change where your domain is pointing and all your links would continue working.

If a URL shortener decided to stop offering its service, the links would be able to live on by managing only the domain level redirects to the service of your choice. The path portion of the URL would pass through the redirect unchanged, so even new short URLs created after moving would work.

An API could be created to allow you to export your new URLs regularly and archive them where you are in complete control.

As I was writing this post some of the advantages described above occurred to me. I’m sure there are other advantages and other ways to make a new URL shortener that offers something different. What are your ideas?

P.S. be sure to check out http://tweete.rs it is still in the early stages of construction, but it already has lists of tweeters, their tweets, and related tweets from all tweeters on nearly 100 topics.