38 Open-Source and Free Self-hosted URL Shortner

38 Open-Source and Free Self-hosted URL Shortner
Photo by Ales Nesetril / Unsplash

Open-source and free self-hosted URL shorteners are tools or platforms that are available for anyone to use and modify. They provide the ability to create and manage shortened URLs without relying on external services. These solutions are often developed by a community of contributors and are licensed under open-source licenses, allowing users to access, modify, and distribute the source code.

The advantage of open-source and free self-hosted URL shorteners is that they give users full control over their data and the functionality of the tool.

Users can host the URL shortener on their own server, ensuring privacy and security.

Additionally, being open-source allows users to customize and extend the functionality of the tool according to their specific needs.

Furthermore, these solutions are typically free to use, eliminating the need for recurring subscription fees or reliance on third-party providers. This makes them a cost-effective option for individuals or organizations looking to have complete control over their URL shortening service.

Overall, open-source and free self-hosted URL shorteners offer the freedom, flexibility, and security to create and manage shortened URLs independently.

Here is our list of several open-source solutions that you can self-host on your server and use totally free of charge.

1- YOURLS

YOURLS is an impressive set of PHP scripts that empowers you to confidently run Your Own URL Shortener on your server.

With YOURLS, you will have complete control over your valuable data, access to detailed stats and analytics, the ability to customize with plugins, and much more. Best of all, it's free and open-source, giving you the freedom you deserve.

GitHub - YOURLS/YOURLS: 🔗 The de facto standard self hosted URL shortener in PHP
🔗 The de facto standard self hosted URL shortener in PHP - GitHub - YOURLS/YOURLS: 🔗 The de facto standard self hosted URL shortener in PHP
YOURLS | YOURLS
Your Own URL Shortener

8bits Link Shortener is a user-friendly and efficient serverless tool that allows you to shorten long URLs effortlessly. By utilizing MongoDB and Vercel, it provides a seamless experience for users.

Features

  • ⚡️ Lightning-Fast: With just a simple paste, you can retrieve or copy the shortened URL in less than a second, saving you valuable time.
  • ❤️ Simplicity at its Best: Our platform boasts a minimalist UI design, ensuring a straightforward and clutter-free experience.
  • 🔒 Top-Notch Security: Rest assured, as our serverless system is designed with security as a top priority, guaranteeing the safety of your data.
  • Released under Apache-2.o License.
GitHub - uiuxarghya/8bits: 🔗 Fast, simple & serverless, URL shortener written in NextJS.
🔗 Fast, simple & serverless, URL shortener written in NextJS. - GitHub - uiuxarghya/8bits: 🔗 Fast, simple & serverless, URL shortener written in NextJS.

3- Kutt

Kutt is a cutting-edge URL shortener that boasts full support for custom domains. Experience the power to effortlessly shorten URLs, efficiently manage your links, and gain valuable insights through comprehensive click rate statistics.

Features

  • Free and open source. (MIT License)
  • Custom domain support.
  • Custom URLs for shortened links
  • Set password for links.
  • Set description for links.
  • Expiration time for links.
  • Private statistics for shortened URLs.
  • View, edit, delete and manage your links.
  • Admin account to view, delete and ban links.
  • Ability to disable registration and anonymous link creation for private use.
  • RESTful API.
GitHub - thedevs-network/kutt: Free Modern URL Shortener.
Free Modern URL Shortener. Contribute to thedevs-network/kutt development by creating an account on GitHub.

4- Polr

Polr is an intrepid, self-hostable open-source link shortening web application with a robust API. It allows you to host your own URL shortener, to brand your URLs, and to gain control over your data. Polr is especially easy to use, and provides a modern, themable feel.

GitHub - cydrobolt/polr: :aerial_tramway: A modern, powerful, and robust URL shortener
:aerial_tramway: A modern, powerful, and robust URL shortener - GitHub - cydrobolt/polr: :aerial_tramway: A modern, powerful, and robust URL shortener

5- UrlHub

UrlHub is an open-source URL shortener created and maintained by Budi Hermawan.

It offers reliable link shortening, custom URLs, QR code generation, the ability to edit or delete links, and the option for IP anonymization. The platform is highly customizable, written in PHP and Laravel, and features a modern and simple interface.

GitHub - realodix/urlhub: ✂️ URL shortener web application based on the Laravel PHP Framework.
✂️ URL shortener web application based on the Laravel PHP Framework. - GitHub - realodix/urlhub: ✂️ URL shortener web application based on the Laravel PHP Framework.

shlink A PHP-based self-hosted URL shortener that can be used to serve shortened URLs under your own domain.

GitHub - shlinkio/shlink: The definitive self-hosted URL shortener
The definitive self-hosted URL shortener. Contribute to shlinkio/shlink development by creating an account on GitHub.

7- Zero Width Shortener (ZWS)

Yet another shorten URLs open-source project with invisible spaces.

GitHub - zws-im/zws: Shorten URLs using invisible spaces
Shorten URLs using invisible spaces. Contribute to zws-im/zws development by creating an account on GitHub.

8- UrlHum

UrlHum is a modern, privacy-aware and fast URL Shortener built with PHP and the Laravel Framework. At the moment UrlHum is heavily under development, so we recommend you to don't use it in production.

UrlHum provides you advanced privacy-oriented options, such as IP hashing and anonymizing.

More, you control pretty anything from the admin panel: you can decide if an unauthenticated user must be able to create a Short URL, if disallowing certain Short URLs from being created and so much more!

UrlHum offers in-depth analytics while still respecting users privacy. You can see clicks, real clicks, countries visits and HTTP referers from the admin panel. To view an URL analytics, it's enough to add a + after the Short URL!

GitHub - urlhum/UrlHum: The modern, privacy-aware URL Shortener built in PHP.
The modern, privacy-aware URL Shortener built in PHP. - GitHub - urlhum/UrlHum: The modern, privacy-aware URL Shortener built in PHP.

9- Slash

Slash is an open source, self-hosted bookmarks and link sharing platform. It allows you to organize your links with tags, and share them using custom shortened URLs.

Slash also supports team sharing of link libraries for easy collaboration.

Features

  • Create customizable /s/ short links for any URL.
  • Share short links public or only with your teammates.
  • View analytics on link traffic and sources.
  • Easy access to your shortcuts with browser extension.
  • Open source self-hosted solution.
GitHub - boojack/slash: An open source, self-hosted bookmarks and link sharing platform. Save and share your links very easily
An open source, self-hosted bookmarks and link sharing platform. Save and share your links very easily - GitHub - boojack/slash: An open source, self-hosted bookmarks and link sharing platform. Sav…

10- Pygmy

Pygmy is an open-source feature rich & extensible url-shortener + analytics written in Python.

Features

  • URL shortener
  • Customized short URL's(ex: pygy.co/pygmy)
  • Support to create auto expiry URL after some time.
  • Secret key protected URL's
  • User Login/Sign up to track shortened URL's and link stats
  • User dashboard
  • Link Analytics(add + to the tiny URL to get link stats)
GitHub - amitt001/pygmy: An open-source, feature rich & extensible url-shortener + analytics written in Python :cookie:
An open-source, feature rich & extensible url-shortener + analytics written in Python :cookie: - GitHub - amitt001/pygmy: An open-source, feature rich & extensible url-shortener + analytics…

11- Azure Url Shortener (AzUrlShortener)

A simple and easy to use and to deploy budget-friendly Url Shortener for everyone. It runs in your Azure (Microsoft cloud) subscription.

Features

  • Redirect different destination base on schedules.
  • Keep Statistics of your clicks.
  • Budget-friendly and 100% open-source.
  • Extensible for more enterprise-friendly configurations
  • Simple step by step deployment.
GitHub - microsoft/AzUrlShortener: An simple and easy Url Shortener
An simple and easy Url Shortener. Contribute to microsoft/AzUrlShortener development by creating an account on GitHub.

12- Sleeky

Sleeky is a minimal interface package for use with YOURLS, an open source URL shortener. Sleeky adds a public interface and overhauls the backend (admin) interface.

Using this theme you can create your own Bitly / URL shortening site or a shortening site for internal use at companies.

Sleeky is split into two parts - frontend and backend.

  • Frontend adds a public user interface. Use this for creating a branded URL shortener or shortening service.
  • Backend makes the YOURLS backend look a lot prettier and makes various administrative tasks easier.
GitHub - Flynntes/Sleeky: 🎨 A sleek and simple frontend & backend theme for YOURLS
🎨 A sleek and simple frontend & backend theme for YOURLS - GitHub - Flynntes/Sleeky: 🎨 A sleek and simple frontend & backend theme for YOURLS

13- dogbin

This is an open-source self-hosted Pastebin alternative and URL shortener.

GitHub - dogbin/dogbin: The sexiest pastebin and url shortener ever
The sexiest pastebin and url shortener ever. Contribute to dogbin/dogbin development by creating an account on GitHub.

14- filite

Filite is an open-source A simple, light and standalone pastebin, URL shortener and file-sharing service that hosts files, redirects links and stores texts.

GitHub - raftario/filite: A simple, light and standalone pastebin, URL shortener and file-sharing service
A simple, light and standalone pastebin, URL shortener and file-sharing service - GitHub - raftario/filite: A simple, light and standalone pastebin, URL shortener and file-sharing service

15- LinkNode (Next.js)

LinkNode is an open-source tool that helps you generate one link for all your links.

It allows you to add multiple links, use icons for social media, customize icons for other links, preview your page, and create a short URL using bit.ly or dub.co API.

GitHub - sujjeee/linknode: LinkNode is an open-source tool that helps you generate one link for all your links. 🔗🌐
LinkNode is an open-source tool that helps you generate one link for all your links. 🔗🌐 - GitHub - sujjeee/linknode: LinkNode is an open-source tool that helps you generate one link for all your li…

16- urlsh

This is a free Golang URL shortener and bookmarker service with UI, API, Cache, Hits Counter and forwarder using PostgreSQL and Redis in backend, Bulma in frontend. Think of it as self-hosting ready URL shortener.

GitHub - adhocore/urlsh: Golang URL shortener and bookmarker service with UI, API, Cache, Hits Counter and forwarder using postgres and redis in backend, bulma in frontend. Think of it as self hosting ready url shortener.
Golang URL shortener and bookmarker service with UI, API, Cache, Hits Counter and forwarder using postgres and redis in backend, bulma in frontend. Think of it as self hosting ready url shortener.…

17- supaflare

This open-source free project enables you to launch your own personal URL shortener/redirection service using free tiers of Supabase, Cloudflare Workers, Workers KV, and Cloudflare Pages. Features include redirection based on device type, support for various URL protocols, and a front-end web application for link management.

GitHub - supaflare/supaflare: URL shortener / redirection service powered by Supabase, Cloudflare Workers, Workers KV and Cloudflare Pages.
URL shortener / redirection service powered by Supabase, Cloudflare Workers, Workers KV and Cloudflare Pages. - GitHub - supaflare/supaflare: URL shortener / redirection service powered by Supabase…

18- TakeMeThere

This tool is a URL Shortening service powered by Google Apps Script and hosted using GitHub Pages.

GitHub - choraria/gas-url-shortener: A URL Shortening service powered by Google Apps Script.
A URL Shortening service powered by Google Apps Script. - GitHub - choraria/gas-url-shortener: A URL Shortening service powered by Google Apps Script.

19- Tinre

Tinre is a self-hosted fast and powerful URL Shortener built with Laravel, Vue.js, and Tailwind CSS.

GitHub - devpri/tinre: A fast and powerful Laravel URL Shortener.
A fast and powerful Laravel URL Shortener. Contribute to devpri/tinre development by creating an account on GitHub.

20- Shortify

Shortify is a fast, fully async and reliable URL shortener RESTful API built with Python and FastAPI framework. It uses the open source MongoDB database for storing shortened URLs data and implements user registration via OAuth2 JWT authentication.

Features

  • Dockerized and ready to be deployed.
  • Fully async and non-blocking.
  • Uses FastAPI framework for API development
  • Uses MongoDB as data store for users and shortened URLs.
  • Extensible architecture for adding new API endpoints and services.
  • Descriptive and well-documented code.
  • OAuth2 (with hashed passwords and JWT tokens) based user authentication.
  • Uses Poetry for dependency management.
  • Automated code formatting and linting with pre-commit and black.
  • CORS (Cross Origin Resource Sharing) support.
  • Pagination support for listing shortened URLs and users.
  • Structured logging with structlog.
  • Correlation ID middleware for logging and tracing requests across services.
  • Class-based API endpoints for better code organization and reducing duplication.
  • Fully type annotated code for better IDE support and code quality.
GitHub - IHosseini083/Shortify: Shortify is a URL shortener RESTful API built with Python and FastAPI ⚡
Shortify is a URL shortener RESTful API built with Python and FastAPI ⚡ - GitHub - IHosseini083/Shortify: Shortify is a URL shortener RESTful API built with Python and FastAPI ⚡

21- koochooloo

With this open-source Golang-based project you can make your URLs shorter (smaller) and more memorable.

GitHub - 1995parham/koochooloo: Make your URLs shorter (smaller) and more memorable in Go
Make your URLs shorter (smaller) and more memorable in Go - GitHub - 1995parham/koochooloo: Make your URLs shorter (smaller) and more memorable in Go

da.gd is both a URL shortener and a collection of quick-info tools, written in PHP and backed by a custom, lightweight framework.

The production site is https://da.gd/ - which primarily brands itself as a URL shortener.

Each URL is checked by multiple safe-browsing APIs in an effort to combat phishing attempts. Additionally, our volunteer abuse-response team is very active and quick to take down short URLs in the production site which lead to phishing sites or other malicious content.

da.gd allows you to use curl (or any other http client) to quickly retrieve various kinds of information such as your IP, useragent, whois for a given domain or IP, DNS lookups, etc., from an easy-ish-to-remember URL.

GitHub - dagd/dagd: A URL shortener with various other utilities, backed by a custom lightweight framework.
A URL shortener with various other utilities, backed by a custom lightweight framework. - GitHub - dagd/dagd: A URL shortener with various other utilities, backed by a custom lightweight framework.

21- Lynx

Lynx is a full stack application using the MEVN stack to shorten your URLs.

GitHub - Lynx-Shortener/Lynx: A fullstack application using the MEVN stack to shorten your URLs.
A fullstack application using the MEVN stack to shorten your URLs. - GitHub - Lynx-Shortener/Lynx: A fullstack application using the MEVN stack to shorten your URLs.

22- Shorty

Shorty is a free and open-source self-hosted URL shortening service built using Flask & MySQL.

GitHub - highoncarbs/shorty: :link: A URL shortening service built using Flask and MySQL
:link: A URL shortening service built using Flask and MySQL - GitHub - highoncarbs/shorty: :link: A URL shortening service built using Flask and MySQL

23- URL Shortener

A simple URL shortener utility built with Node.js, PostgreSQL, Redis and Kafka.

GitHub - smallcase/smalllinks: Simple URL shortener built with Fastify. Uses PostgreSQL, Redis, and Kafka.
Simple URL shortener built with Fastify. Uses PostgreSQL, Redis, and Kafka. - GitHub - smallcase/smalllinks: Simple URL shortener built with Fastify. Uses PostgreSQL, Redis, and Kafka.

24- Delta - file uploader + url shortner

With Delta you can fire a simple curl command with a file name, and that file will be uploaded to your server, after that you'll have a short URL as a response of upload.

Moreover, you can use this URL to fetch the uploaded file. Same goes with URL shortener.

Features

  • ⚡ File uploader backed with Superfast Expressjs and Multer
  • 📁 URL shortener for files (upload file ⇒ get shortened URL in return)
  • 🌐 URL shortener for long URLS (http://example.com/games/minecraft/world ⇒ http://sma.ll/6Tj)
  • 🔥 Custom URL support (http://example.com/longurl/school/college/work ⇒ http://sma.ll/life)
  • 🎉 Secured with API keys
  • 👪 Multiuser + Multidomain support on the same server (see this)
  • ⌛ Configurable Cron job for deleting resources older than X time
  • 🔢 Never Clashing (0% collision guaranteed) Permanent ID's for generated URLs.
  • 💣 self destructing links
  • 🔐 Password protected links
  • 👻 Easy to install, setup and use :P
GitHub - fosslife/delta: A modern file uploader + URL shortner written in node for your private cloud. low memory overhead + secure
A modern file uploader + URL shortner written in node for your private cloud. low memory overhead + secure - GitHub - fosslife/delta: A modern file uploader + URL shortner written in node for your…

25- emojied

This open-source project enables you to shorten your URLs with emojis!

Features

  • Well, shorten your URLs!
  • Customize what emoji to use. e.g Want to use an eggplant emoji? Sure, as long as it's not taken!
  • Not sure what emoji to use? emojied autogenerates one for you.
  • View URL clicks (simple stats for now)
  • Leaderboard - See the top 20 most clicked links!
  • Do you hate enabling JS? Well, this works completely fine with JS disabled!*
GitHub - sekunho/emojied: ✂️ A URL shortener that uses emojis, only emojis.
✂️ A URL shortener that uses emojis, only emojis. Contribute to sekunho/emojied development by creating an account on GitHub.

26- URL shortener

Self-hosted URL shortener / redirection service powered by Supabase, Cloudflare Workers, Workers KV and Cloudflare Pages.

Features

  • Redirection based on device type (Default / Android / iOS)
  • Support various URL protocols
  • Front-end web application for link management
GitHub - supaflare/supaflare: URL shortener / redirection service powered by Supabase, Cloudflare Workers, Workers KV and Cloudflare Pages.
URL shortener / redirection service powered by Supabase, Cloudflare Workers, Workers KV and Cloudflare Pages. - GitHub - supaflare/supaflare: URL shortener / redirection service powered by Supabase…

27- url-shortener

A golang URL Shortener with mysql support.
Using Bijective conversion between natural numbers (IDs) and short strings

GitHub - pantrif/url-shortener: A golang URL Shortener
A golang URL Shortener. Contribute to pantrif/url-shortener development by creating an account on GitHub.

28- Short URLs Get More Attention

Yet Another URL Shortener...

Features

  • Cloudflare for Teams Access
  • Temporary and Permanent redirects
  • Click tracking
GitHub - timcole/sugma: 🥜 Short URLs Get More Attention - Yet Another URL Shortener...
🥜 Short URLs Get More Attention - Yet Another URL Shortener... - GitHub - timcole/sugma: 🥜 Short URLs Get More Attention - Yet Another URL Shortener…

29- goRubu

A URL shortener written in Go, with a Mongo based backend, Prometheus and Grafana based monitoring, Memcached based write-through caching. The whole application is also dockerized.

Features

  1. Supports Caching for Hot urls, with Memcached, using a LRU based eviction strategy, and write through type of caching mechanism. Saw 200% decrease in Read Latency for URL redirection, after caching.
  2. Used Travis CI for adding a CI/CD pipeline.
  3. Dockerized the whole application. Used Docker compose for tying up different containers and multi-stage build for reducing the size of docker image by 900%.
  4. Prometheus and Grafana based monitoring, to get an overall picture of the system and application metrics.
  5. Handled Concurrent Requests, using a global Mutex, over Request Level. Use Optimistic Concurrency Control and Pessimistic Concurrency Control, to see if Performance can be increased.
  6. Contains Api Validation and Logging Middlewares, along with Swagger based documentation
GitHub - rv404674/goRubu: A URL shortener written in Go, with a Mongo based backend, Prometheus and Grafana based monitoring, Memcached based write-through caching. The whole application is also dockerized.
A URL shortener written in Go, with a Mongo based backend, Prometheus and Grafana based monitoring, Memcached based write-through caching. The whole application is also dockerized. - GitHub - rv404…

30- AKA

AKA is a simple, private URL shortener/bookkeeper for personal use that is hosted locally.

For example, the URL https://long-domain.com/foo/, can be shortened to aka/foo.

AKA also allows for sub-routes of shortened URLS. So typing in aka/foo/bar in your browser will redirect you to https://long-domain.com/foo/bar.

AKA provides the same bookmarking that, for example, your bookmarks bar on your browser already provides. However, interacting with your keyboard is faster than interacting with your mouse and GUI.

AKA provides short keyboard access to bookmark your most visited websites.

GitHub - brandonLi8/aka: A simple, private URL shortener/bookkeeper that is hosted locally.
A simple, private URL shortener/bookkeeper that is hosted locally. - GitHub - brandonLi8/aka: A simple, private URL shortener/bookkeeper that is hosted locally.

31- Shorty

Shorty is a URL shortener: it assigns a short ID to a URL of any length, and when people will access the URL with that short ID, they will be redirected to the original URL.

This is useful in cases such as sending SMS notifications, when you have a limited number of characters and don't want to waste them with a long URL and its parameters.

GitHub - ffissore/shorty: URL shortener available as library, microservice (even containerized), aws lambda, and azure function
URL shortener available as library, microservice (even containerized), aws lambda, and azure function - GitHub - ffissore/shorty: URL shortener available as library, microservice (even containerize…

32- SЁCU

SЁCU is a public API to store self-destructing data payloads with url shortener and handle anonymous chat-rooms.

Features

GitHub - secusu/secusu: SЁCU is a public API to store self-destructing data payloads with url shortener and handle anonymous chat-rooms.
SЁCU is a public API to store self-destructing data payloads with url shortener and handle anonymous chat-rooms. - GitHub - secusu/secusu: SЁCU is a public API to store self-destructing data payloa…

33- Fireshort

Fireshort is a URL shortener made using Google Firestore and React.JS The original repository has been forked from here

The following features has been added to the original repository before pushing this repo:

  • The generated links now track the number of hits on them
  • The Custom URL is an optional field now, if left black it generates a random 8 character long code using NanoID
  • Ability to track link activity : The links can now track the timestamp,ipv4 and User-Agent of the Request source
  • The Link Tracking feature for any link can be switched on/off at anytime from Admin Panel
  • A lot of UI Changes
GitHub - monizb/FireShort: A URL Shortener made using React.JS and Google Firestore
A URL Shortener made using React.JS and Google Firestore - GitHub - monizb/FireShort: A URL Shortener made using React.JS and Google Firestore

34- 1 Point URL Shortener

Yet another URL shortener with protection against malicious redirects.

A concern with URL shortening is the potential for hidden or masked URLs that may lead to malicious or inappropriate sites.

This feature allows users to view URL metadata before being redirected.

GitHub - 1pt-co/1pt: A URL shortener with protection against malicious redirects
A URL shortener with protection against malicious redirects - GitHub - 1pt-co/1pt: A URL shortener with protection against malicious redirects

35- gull

A simple URL shortener made in Golang.

GitHub - aeolyus/gull: 🐦 A simple, modern URL shortener in Go
🐦 A simple, modern URL shortener in Go. Contribute to aeolyus/gull development by creating an account on GitHub.

36- purls.py

Personal URL Shortener.

GitHub - hq6/purls: Personal URL Shortener
Personal URL Shortener. Contribute to hq6/purls development by creating an account on GitHub.

37- qrgen.cc - QR-Code generator/url-shortener

QrGen.cc is a free service that lets you create QR-Codes and shortened URLs from any link quickly and easily

GitHub - BetaHuhn/qrgen: 🔗 QrGen.cc lets you create QR-Codes and shortened URLs from any link quickly and easily
🔗 QrGen.cc lets you create QR-Codes and shortened URLs from any link quickly and easily - GitHub - BetaHuhn/qrgen: 🔗 QrGen.cc lets you create QR-Codes and shortened URLs from any link quickly and e…

38- gitio

Custom URL shortener using Github's git.io API: command line interface, written in Bash, also keeps a local log.

GitHub - rsvp/gitio: Custom URL shortener using Github’s git.io API: command line interface, written in Bash, also keeps a local log.
Custom URL shortener using Github's git.io API: command line interface, written in Bash, also keeps a local log. - GitHub - rsvp/gitio: Custom URL shortener using Github's git.io API: comma…

Read more