top of page
  • LinkedIn
  • Facebook
  • YouTube
  • Twitter
  • Instagram
  • Pinterest
  • Tumblr
  • Vkontakte

URL Shortener (Tiny URL) System Design: A Complete Guide

Updated: Jun 16, 2022


tiny url image


In our previous article we studied Netflix system design. In this article we will discuss how to design a high performance tiny URL or URL shortener service.


Problem Statement


Design a URL shortner service.


Functional Requirements


  1. For a given input URL (long URL) our service should generate and return a shortened URL to the user.

  2. When the user clicks on the shortened URL, our service should redirect the user to the original URL.


Non-Functional Requirements

  1. The system should be scalable, highly available.

  2. Our system should be performant.

  3. For security purposes, the generated short URL should be as random as possible, it should not be predictable.


Introduction


A tiny URL or URL shortener is a service which takes a long URL and converts it into an equivalent short URL containing lesser characters. When the user clicks this shortened URL, he would be redirected to the same destination address as the original URL.


For example, lets say our original URL is: