← Back to Blog
·9 min read

How URL Shorteners Work: A Technical Guide


Ever wondered what happens when you click a short link? URL shorteners might seem like magic, but the technology behind them is elegant and straightforward. In this guide, we'll break down exactly how URL shorteners work, from creating a short link to tracking every click.


The Basic Concept


At its core, a URL shortener does three things:


1. Takes a long URL and assigns it a unique short code (slug)

2. Stores the mapping between the short code and the original URL

3. Redirects visitors who visit the short URL to the original destination


Let's dive into each step.


Step 1: Generating the Short Code


When you paste a long URL into a shortener like y.hn, the system needs to generate a unique short code. There are several approaches:


Random Generation


The most common approach is generating a random string of characters. For example, y.hn might generate a 3-6 character code using alphanumeric characters (a-z, A-Z, 0-9).


With just lowercase letters and numbers (36 characters), a 3-character slug gives you 46,656 possible combinations. A 4-character slug gives 1,679,616 combinations. That's a lot of links.



Characters: a-z (26) + 0-9 (10) = 36


3 chars: 36³ = 46,656


4 chars: 36⁴ = 1,679,616


5 chars: 36⁵ = 60,466,176


6 chars: 36⁶ = 2,176,782,336



Hash-Based Generation


Some shorteners use a hash function (like MD5 or SHA-256) on the original URL and take the first few characters. This has the advantage of always generating the same short code for the same URL, avoiding duplicates.


Auto-Incrementing IDs


Another approach is to use an auto-incrementing database ID and convert it to base-36 or base-62. ID 1 becomes "1", ID 36 becomes "10" (in base-36), and so on. This ensures no collisions but makes URLs predictable.


Custom Slugs


Most shorteners also let users choose their own slug (like y.hn/my-brand). This is simply a matter of checking if the desired slug is available in the database.


Step 2: Storing the Mapping


The short code and original URL are stored in a database. A simplified database table looks like this:


idslugtarget_urlcreated_atclicks
1abchttps://example.com/very/long/path2026-01-1542
2xyzhttps://another-site.com/page2026-01-1617

Modern URL shorteners like y.hn use databases optimized for fast reads, since the read (redirect) operation happens far more frequently than writes (creating links).


Common database choices include:

  • PostgreSQL: Reliable, full-featured relational database
  • Redis: In-memory database for ultra-fast lookups
  • DynamoDB: AWS managed NoSQL database for scalability

Many shorteners use a combination — Redis for caching popular links and PostgreSQL for persistent storage.


Step 3: The Redirect


When someone visits a short URL (e.g., y.hn/abc), here's what happens:


1. The browser sends an HTTP request to y.hn

2. The server extracts the slug ("abc") from the URL path

3. The server looks up "abc" in the database

4. If found, the server sends an HTTP redirect response

5. The browser follows the redirect to the original URL


The redirect typically uses one of two HTTP status codes:


  • 301 (Moved Permanently): Tells browsers to cache the redirect. Better for SEO but makes analytics less accurate since cached redirects skip the server.
  • 302 (Found) or 307 (Temporary Redirect): Doesn't get cached, so every click goes through the server. Better for analytics.

Most URL shorteners use 301 redirects for SEO benefits, while still tracking clicks server-side before redirecting.


Analytics: Tracking Every Click


Modern URL shorteners capture valuable data with each click:


What Gets Tracked


  • Timestamp: When the click happened
  • IP Address: Used to determine geographic location (then discarded for privacy)
  • User Agent: The browser and device information
  • Referer: Where the click came from (e.g., Twitter, Facebook, email)
  • Country/City: Derived from IP geolocation

How It Works


When a click comes in, before sending the redirect response, the server:


1. Records the click event in an analytics database

2. Increments the click counter on the link

3. Parses the User-Agent header to identify device, browser, and OS

4. Uses an IP geolocation database to determine the visitor's location

5. Reads the Referer header to know where the click originated


This all happens in milliseconds, so the user barely notices any delay.


Advanced Features


Password Protection


Some links can be password-protected. When a visitor arrives, instead of immediately redirecting, the server shows a password form. Only after entering the correct password does the redirect happen.


Link Expiration


Links can have expiration dates. The server checks if the current date is past the expiry before redirecting. Expired links typically show a "link expired" page.


QR Codes


QR codes are simply the short URL encoded as a visual pattern. The QR code contains the text "https://y.hn/abc" which, when scanned, opens that URL in a browser. The same redirect and tracking process applies.


Custom Domains


Business users can use their own domain (e.g., links.mybrand.com) instead of the shortener's domain. This works by:


1. User points their domain's DNS to the shortener's servers

2. The shortener's server handles requests for that domain

3. Redirects work the same way, just with a different domain


Security Considerations


URL shorteners face unique security challenges:


  • Malicious links: Shorteners must scan destination URLs for malware and phishing
  • Abuse prevention: Rate limiting and CAPTCHA prevent automated abuse
  • Privacy: User click data must be handled responsibly
  • Availability: High uptime is critical since broken shortlinks mean broken experiences

Building Your Own vs. Using a Service


While you could build a basic URL shortener in a weekend, production-ready shorteners require:


  • Global CDN for fast redirects worldwide
  • DDoS protection
  • Abuse detection and prevention
  • Scalable analytics processing
  • Reliable uptime (99.9%+)
  • Regular security audits

For most people, using a service like y.hn is far more practical than building and maintaining your own.


FAQ


Q: Do URL shorteners slow down page loading?

A: The redirect adds a small delay (typically 50-200ms), but it's barely noticeable.


Q: Can a shortened URL be changed after creation?

A: The destination URL can usually be updated, but the short code itself is permanent.


Q: What happens if a URL shortener shuts down?

A: All links would break. This is why it's important to use established services with sustainable business models.


Q: Are URL shorteners bad for SEO?

A: No. 301 redirects pass link equity, so shortened URLs don't harm your SEO.


---


Want to see URL shortening in action? Create your first short link on y.hn — it takes less than 5 seconds.

Ready to try the shortest links on earth?

Create your first short link in seconds. No signup required.

Try y.hn Free →