Web

Self-Hosted URL Shortener

To run your own link shortener on your domain, three options cover it. For a powerful, API-first shortener with analytics, Shlink. For the long-standing PHP classic, YOURLS. For a modern UI with user accounts, Kutt.

Updated 2026-06-03 · by

Top pick

Shlink

Shlink is the most capable of the three: a full REST API, detailed visit analytics, support for multiple domains, and official web and mobile clients. If you want a shortener you can automate and measure, it is the strongest pick.

The options

Shlink

MIT, free

A powerful, API-first URL shortener with analytics and a web UI.

Visit Shlink site
Runs on
Docker, ~1 GB RAM, needs a database.
Pick it if
You want a capable shortener with an API, stats, and multiple domains.

YOURLS

MIT, free

A long-standing, lightweight PHP URL shortener with plugins.

Visit YOURLS site
Runs on
PHP and MySQL, very light.
Pick it if
You want a simple, proven shortener and like PHP plugins.

Kutt

MIT, free

A modern, open-source shortener with a clean UI and user accounts.

Visit Kutt site
Runs on
Docker, needs Postgres and Redis.
Pick it if
You want a polished UI with accounts and link management.

How to choose

If you want power and automation, Shlink is the strongest: a full REST API, detailed visit analytics, multiple domains, and official mobile and web clients. YOURLS is the lightweight veteran, dead simple to run on basic PHP hosting with a big plugin library. Kutt sits in between with a modern UI and user accounts, at the cost of needing Postgres and Redis.

Whichever you pick, point a short domain or subdomain at it and put it behind a reverse proxy with HTTPS. For that, see Caddy vs Nginx.

The verdict

For a powerful self-hosted shortener with an API and analytics, run Shlink. Choose YOURLS for a simple, lightweight classic on basic PHP hosting, or Kutt for a modern UI with accounts. Point a short domain at whichever you pick, behind a reverse proxy; see Caddy vs Nginx.

FAQ

What is the best self-hosted URL shortener?

Shlink for power and API access, YOURLS for a simple lightweight classic, or Kutt for a modern UI with accounts. All run on your own domain so you own the links and the data.

Do I need my own domain?

Yes, that is the point. A self-hosted shortener uses your domain or a short subdomain, so links are branded and you own the redirects and the analytics.

Which is the lightest to run?

YOURLS, which runs on basic PHP and MySQL. Shlink and Kutt need a database and a bit more setup, but offer more features like APIs and richer analytics.

Related on HomelabCompass

← All self-hosted alternatives