Tools/thedevs-network/kutt

kutt

Free Modern URL Shortener.

11.2k ★+7/wkgrowthJavaScriptMIT License →

The Lens

By Erik Loyd, SaaS CEO and former COO/CFO of an AWS Premier Partner.

Updated Sep 2026

Kutt is the easiest self-hosted shortener to actually get running. It defaults to SQLite, so there is no separate database server to provision, and Node 20 plus a single command puts you in business.

The feature list covers what people really use: custom domains, password protected links, expiration times, private per link statistics, a REST API, admin controls for managing users and links, and OIDC login when you want it wired into a company identity provider. Postgres and MySQL are available for when SQLite stops being enough, and Redis is optional caching rather than a requirement.

MIT licensed and free, with a free hosted instance at kutt.to for anyone who does not want to run anything at all. Solo: use kutt.to. Small teams: self-host, since the SQLite default keeps the whole thing to one process and one file on disk. Teams routing many domains at scale should look at shlinkio/shlink instead.

The catch is that the low setup cost comes from doing less. There is no plugin system the way YOURLS/YOURLS has one, and the analytics stop at the basics. For most people that is a fair trade, but know what you are trading before the reporting request arrives.

Free vs Self-Hosted vs Paid

fully free

Free: Everything, both self-hosted and on the public kutt.to instance. Custom domains, custom link slugs, passwords, descriptions, expiration times, private statistics, link management, a REST API, and OIDC single sign-on.

Self-hosted: Node.js 20 or newer. SQLite by default with no separate database process, or Postgres or MySQL and MariaDB if you prefer. Redis is optional for caching. Docker deployment is supported.

Paid: No paid tier. The hosted kutt.to service is free, and self-hosting has no feature gates.

Free either way, hosted or self-hosted. The SQLite default means you can run it without standing up a database server at all.

What to do by team size

Solo
free; use the hosted kutt.to and skip the server entirely
Small team
free self-hosted, one process and one SQLite file
Medium team
free, move to Postgres once link volume justifies it
Large team
free, but shlink handles multi-domain routing better at this size
Self-hosting ops:trivial
View pricing page →

Get tools like this every Wednesday

One featured tool, three on the radar. No fluff.

Similar Tools

Score
80/100 · A
Adoption27/30
Maintenance15/25
Community13/20
License15/15
Analysis10/10

A low score is not a verdict on quality. Young and niche tools start low by design. How we calculate scores

Trust Signals

High adoption: 11,062 starsActive community: 1,503 forksCommunity discussions enabledOrganization account (13 public repos)

License: MIT License

Use freely, including commercial. Just keep the license.

Commercial use: ✓ Yes

About

Owner
The Devs (Organization)
Stars
11,153
Forks
1,506

Explore Further

More tools in the directory