Can AI replace Bitly?
A slug, a lookup, a 302, and a row in a table. Cloudflare Workers plus KV and D1 does the whole job on the free tier, and QR codes are one library call. The only thing you are really buying is that bit.ly resolves links created in 2012 and will presumably still resolve them in 2032, which is an institutional promise rather than a technical one. If the links are going in a magazine ad or on packaging, that promise is worth something. If they are going in this week's newsletter, it is worth nothing, and Growth is 420 USD a year.
01What it costs
Checked Aug 12, 2026 · source: bitly.com.
| Plan | Monthly | Billed yearly | What you get |
|---|---|---|---|
| Free | Free | Free | 5 links/month; 2 QR codes/month; 2 landing pages; 3 custom back-halves/month; 1,000 API requests/month; unlimited clicks/scans |
| Core | — | $10/mo | 100 links/month; 5 QR codes/month; 5 landing pages; 5 redirects/month; 5,000 API requests/month; 30-day analytics history |
| Growth | $35 | $29/mo | 500 links/month; 10 QR codes/month; 10 landing pages; 20 redirects/month; 25,000 API requests/month; 120-day history; 1 custom domain |
| Premium | $300 | $199/mo | 3,000 links/month; 200 QR codes/month; 20 landing pages; 110 redirects/month; 50,000 API requests/month; 1-year history |
| Enterprise | — | — | Custom links, QR codes, landing pages, API volume and users; 2-year analytics history |
Hidden costs: Core cannot be bought monthly. Feature quotas reset monthly; extra enterprise capabilities such as parameter passing can be separately purchasable, and sales tax may be added.
02Could AI build it for you?
The core job: Map a short slug to a destination, 302 to it, log the click with device and country, and render a QR code for any link.
What a working version needs:
- Cloudflare account (Workers, KV, D1)
- a domain you control
- wrangler CLI
You are not paying for the redirect · you are paying for the promise that it still works in ten years.
03What you'd give up
- links that outlive your own infrastructure · a domain you stop renewing takes every link with it
- bit.ly's recognition in the link itself, which cuts both ways now that shorteners get spam-filtered
- bundled QR code management, landing pages, and campaign grouping
- city-level and device-level analytics rollups without building them
- an SLA and someone to call
Bitly's actual product is a promise about the future: that a link printed on a box in 2019 still resolves today. No amount of code buys that, only an institution that intends to keep existing. Teams also pay for shared workspaces, SSO, and the audit trail, and marketing departments pay because the alternative is asking engineering for a redirect and waiting two weeks.
04Free and cheaper alternatives
Bitly with deeper attribution; self-hosting means recreating half a startup's infrastructure.
Versus paying: Dub has richer attribution, but self-hosting depends on several external databases, queues, analytics, storage, email, and deployment services and still lacks Bitly's enterprise support and governance.
dub.co →Branded links, routing rules and serious click stats in one container; the QR endpoint is living on borrowed time.
Versus paying: Shlink supplies the shortening API and analytics, but the user must host a separate web client, operate the server, and accept that its built-in QR endpoint is being deprecated.
shlink.io →A thousand branded links, QR codes and real analytics before the pricing page becomes relevant.
Versus paying: Short.io's free plan is generous, but the lifetime link ceiling and smaller campaign, governance, integration, and enterprise-support surface make it less durable than paid Bitly.
short.io →A polished Bitly clone on Cloudflare; free hosting, several bindings, and no server to patch.
Versus paying: Sink is elegant on Cloudflare, but it lacks Bitly's mature QR campaign management, team permissions, branded-link governance, integrations, and vendor support.
sink.cool →05The build prompt
Paste this into an AI coding tool (such as Claude, ChatGPT, Lovable or Replit) to build your own version.
Build me a link shortener with click analytics and QR codes to replace Bitly. Requirements:
- Cloudflare Workers via wrangler: KV for the slug lookup, D1 for the click
log. Free tier, and it runs on my own domain.
- A worker on go.mydomain.com/{slug} reads KV and 302s, writing the click to
D1 inside ctx.waitUntil so the redirect never waits on the database.
- Slugs are random 6-character base62 by default, but I can set a custom
back-half, and creating one that already exists fails loudly instead of
overwriting it.
- Log per click: slug, timestamp, country and city from request.cf,
device type parsed from the user-agent, and referer.
- Generate a PNG QR code for any link with the qrcode npm package, served at
/qr/{slug} and cached, so print material points at the same tracked link.
- Optional expiry and a click cap per link · past either, 302 to a fallback
URL I set instead of returning a 404.
- An /admin page behind one password (wrangler secret) listing links with
clicks per day, plus top countries and device split per link.
- Secrets via wrangler secret, never in wrangler.toml. No accounts, no
third-party analytics, no telemetry.
- README: wrangler setup, the KV namespace and D1 database, the DNS record,
and a warning that these links die with the domain, so use a domain you
intend to keep renewing.06Open-source starting points
App prices, verdicts, alternatives and build prompts are adapted from Can I Vibecode It? (MIT License, © 2026 Rob Hallam). Each price shows the date it was checked and its source. Prices change; confirm on the vendor's site before you decide.
Get new verdicts in your inbox.
One short email when new verdicts land: what AI can now do for you, and what it still gets wrong. No spam. Unsubscribe anytime.