Note: Metamark is accessible to all versions of every browser. However, this browser may not support basic Web standards, preventing the display of our site's design details.

About Metamark

Who and why?

Over at perl.org we needed a "short url" type service we could trust to work for years, years and yet more years to come. There are a bunch of similar services; but not operated by us, how could we trust they would keep running?

While testing we also found too many odd bugs and design decisions in the other similar systems to really trust them. So there we were; reinventing yet another wheel. :-)

Metamark is built and maintained by Ask Bjørn Hansen of Develooper LLC with help from Robert Spier.

Do Metamark links expire?

The Metamark urls expire after five years or two years after the last usage - whichever comes later. However, if a link is never used, it will expire after two years. This should mean that as long as a link is on a public page, some search engine will visit it and keep it alive.

Of course, this is subject to change and is no promise but just my intentions as of this writing. If you want guarantees you can make your own service.

So far we've been going for almost 5 years though (and not actually expired any links yet; other than ones used by idiots in spam).

Technology

Built on Linux, Perl, mod_perl, Template Toolkit, MySQL, Apache. And a proper MVC architecture. All great stuff.

The site is all XHTML and CSS. No images. Works well in modern browsers like Firefox and Safari as well as in text only browsers like links and lynx. Please send mail if we can do something to make it work better in other browsers. Metamark is designed to handle millions of short urls.

vi(1) free zone! Our staff is using emacs for all editing needs. :-)

Link to Metamark

Copy the following to your website to get a spiffy "Shorten this!" form right on your page.



The form will look like this:

Enter a long URL to make shorter
You can change the look of it with standard CSS codes.

Email contact, please!

Send mail to ask@develooper.com.

For abuse issues, please email abuse at [the obvious domain].

Funny domains

The Metamark service lives on metamark.net, however the short urls are on xrl.us because it's shorter - and that's really the whole point! (xrl.us could mean "accelerate us" or something like that).

Future plans

Send email if you would like to help out.

Obvious sources of inspiration

If you for whatever reason don't want to use metamark.net, there are many other similar services. We used to have a list here, but most of these services seem to die over time ... (which is why we're so focused on longevity here).

notlong.com has a comparison chart of a few services.

Terms of use

The service is provided free of charge with no warranties or promise of suitability for anything. It might stop working at any time. It might not work as designed or expected.

A short link or account may be disabled at our sole discretion at any time if we suspect that it's used for "internet abuse" or for any other reason.

See also our privacy policy.

Recent Changes


September 2014
  - Submission of new links have been disabled. We plan to keep
    the old links working for a long time, but we'll see how it goes.
    It was fun while it was useful, but a URL shortener doesn't serve
    a real use anymore, so the proportion of "spam to helpful" is all
    wrong. We posted a notice about this in the summer of 2013, so
    hopefully not too many people will be surprised!

October 2010
  - New performance improvements; site is much faster again.  The
    system got a little tired occassionally when thousands of abusive
    requsts would come in each second.
  - Various cleanups

May 2010
  - PHP API example
  - Internal improvements for abuse handling (APIs, baby!)
  - Various bugfixes

September 24, 2009
  - Various bugfixes and performance improvements
  - Prepare for API upgrade

September 7, 2009
  - New statistics interface on My Metamark
  - Removed the last bits of the XML-RPC and SOAP APIs
  - Update everything to use jQuery
  - Add link to the Anti-Phishing Working Group 
    from the 'marked as spam' page

June 22, 2009
  - Enable logins via Twitter, Google, Yahoo, Facebook, AOL and OpenID
  - Faster load times
  - More reliably submit the "shorten url" form on enter
  - Various layout tweaks/bugfixes

October, 2008
  - Performance optimizations

April 13, 2008 
  - When the long_url is the same, give registered users
    a unique short url anyway

November 2, 2007
  - No more SOAP API, sorry!  A new and much more extensive JSON/REST
    based API is coming up. The old REST and XMLRPC APIs continue to work.
  - New better "My Metamark" page
  - 50% rewired internals to make future enhancements much easier!

May 15, 2007
  - We updated the software to put less load on our servers and give
    you faster responses.  Everybody wins!

February 13, 2006
  - The service was slow or unresponsive for a couple of minutes in
    the afternoon while we upgraded the internals of the system in
    preperation for some new features coming soon.

July 22, 2005
  - User registration via Bitcard.  See stats on the URLs you've
    shortened.
  - Added TCL API examples, thanks Jordan!

April 30, 2004
  - Add "extensible urls".  You can add extra path information after
    the short url and it'll get included in the "expanded" url. This
    also works via the API.  For example http://xrl.us/bn redirects to
    http://askask.com/, so http://xrl.us/bn/notes/ redirects to
    http://askask.com/notes/
  - Check the URL with the SURBL Spam
    URI Realtime Blocklist before adding it to the database.  We
    should probably run through the database every so often and check
    old urls.

April 2, 2004 
  - Got the first abuse report (surprised it took that long, sad it
    didn't take longer), so I added functionality to disable short urls
    for abuse.

March 26, 2004
  - Moved to a new server
  - Many internal changes to prepare for an open source release,
    including basing the system on Combust.
  - Add "extensible urls".  You can add extra path information after the short url and it'll
    get included in the "expanded" url. This also works via the API.

February 19 2004
  - Made the shortening engine not reuse a short url if it has a
    secret (Thanks Phillip Hallam-Baker!)
  - Will do the redirect directly without the "landing page" even on
    the first visit to xrl.us
  - Made the shortening engine never use L's to avoid confusion with
    1's (which have never been used, but anyway ...)

November 14 2003
  - Added a basic statistics page

September 16 2003
  - Added Python API examples (Thanks Sopsy!)
  - Metamark.net domain hijacked.

May 21 2003
  - More aggressive retries when we check a URL to be added
    (to be compatible with uber-broken web servers)

April 13 2003
  - Added PHP API example (Thanks Martin!)

March 29 2003
  - Strip out commas, dots, etc from the end of the short url when
    redirecting.

March 10 2003
  - Compatibility with IMDb.
  - Change User-Agent string to say XRL/1.00 instead of xrl/0.10.
    (unrelated to the imdb fix) :-)

March 2 2003
  - Added helpful "Link to ..." text to the added form.
  - Removed 'beta' flag from the navigation.

January 14 2003
  - Added link to the OS X Services Menu service

January 13 2003
  - Fix compatibility with target.com.  Like Amazon they don't always
    allow HEAD requests, but they do it a bit differently than Amazon.
    Thanks to Joshua Keroes for the spot.

January 12 2003
  - Various improvements to the "shorten" bot on irc.perl.org (and
    other networks).

January 11 2003

  - Fixed a bug when incoming urls had newlines in them (they are now
    stripped)

  - Added script to convert text to use Metamark urls.

  - Added an expiration policy

  - Added a lookup method to the APIs.


January 7 2003  

  - Generating all pages dynamically is no excuse for not supporting
    If-Last-Modified headers.  Fixed the site to support them.

Comments and questions to Ask Bjørn Hansen at ask@develooper.com
   © 1999-2014 Develooper LLC