Introducing T.ly

Over the past several months, I have been working on a Link Shortener Extension for Chome and Firefox which has grown to over 50,000 users! The feedback has been great and many users love how simple it is to shorten long links. The extension allows users to select their default shortener service such as T.ly, TinyUrl, Bit.ly, is.gd, To.ly, Cutt.ly, Brevis, Rebrandly, and Lnnkin. In one click, they can shorten a URL which then automatically copies to their clipboard in less than a second.

Since the creation of the extension, the goal has been to give users an alternative to goo.gl which shut down in March 2019. This has worked well but shortener services come and go. So to make the extension more stable, I needed to create my own URL shortener.

Introducing T.LY

T.ly is now live and is currently the default URL shortener for the extension. It is a shorter domain than other popular services such as bit.ly. Stats are also being tracked for each shortened URL by adding a + sign to the end of a short URL. This feature mimics goo.gl stats. There is also an API for the service which allows users to use the service in their own applications. To get an API Key, register here.

In the future, I plan to add more features such as:

  • Expire links by date/clicks
  • Update links redirect URL
  • Custom link endings
  • Custom domains

Check out the site and extension. Let me know what features you would like to see in the comments below.

4 thoughts to “Introducing T.ly”

  1. I was so sad and even angry when google closed goo.gl. Somehow it was a kind of guarantee that you could follow the link without having to watch an ad or someone link-chaining 5 such short links to squeeze a couple of cents commission out of each redirect.. I even bought a 3 letter domain directly under my country TLD in hopes of replacing goo.gl with my own private solution, (you two-upped me on that one! as t.ly is a single letter domain!! (how much did that set you back??!), …alas shortening links even for a single compulsive sharer has its own set of interesting problems its not just a matter of “get some randomness and use it to pick letters”

    I’m sure you’ve considered a bunch of scenarios such as the probability of generating a collision on the short key growing logarithmically, because every record you add to the daatabase makes it more expensive to assure uniqueness computationally. The implication being that the service will be chugging along just fine, until one day, ror no apparent reason,it won¡t anymore, as you near the log asymptote.

    So make the urls, sequential! somebody said…, maybe incrementing the key monotonically is inexpensive, but now you’re predictable and your shortener is unsuitable to point short links to so-called “unlisted urls” like google documents shared to “anyone with the link”… there is a sweet spot where you can generate a short key that contains sufficient entropy for your short URLs to become unpredictable, very sparse on the functional domain and such and so… , anyway i digress..

    I got your blog post, as I was obviously looking for a “right now” solution” since i never got around to writing my own,.. (I dide purchase a coupleof hackish short and linkbaity domains, (in spanish) perfect for a service of this kind. hahah.. I’d be interested in the idea of custom domains or even better, hosting my own, if necessary porting to GAE or GCF…. 🙂 let me know if it is something that could interest you

    1. Thanks for your comment Héctor. You bring up some valuable points and I have considered most of them. Right now, scale isn’t a major concern but once there are millions of short URLs, it will be an issue. Currently T.ly does allow the user to set the ending if they have an account. I plan on adding the ability for custom domains in the future. Hopefully, you will sign up for the service and move over your domains once custom domains are available.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.