New: Conversions API and webhook events are live

The link layer for every campaign.

Public URL turns short links into a routing, attribution, and analytics graph for branded domains, UTM campaigns, smart redirects, deep links, and conversion events.

Workspace scopedEdge redirect readyAttribution aware
0.00
Uptime target
0
Edge redirect
0
Analytics freshness
0
Event ingestion

One link layer across every campaign surface

Branded domainsUTM templatesSmart deep linksQR codesEdge redirectsConversion eventsWebhooksREST APIReal-time analyticsWorkspace rolesBranded domainsUTM templatesSmart deep linksQR codesEdge redirectsConversion eventsWebhooksREST APIReal-time analyticsWorkspace roles

One link layer, every campaign surface.

Pick a surface to see what ships with it — every capability lives on the same workspace record.

Branded short links your team owns.

Custom domains, slugs, QR codes, folders, and tags — under one workspace.

  • One-click DNS verification for custom domains.
  • Folders, tags, expiration, and password protection.
  • QR codes generated from the same link record — print or screen.

Built for the teams that ship every week.

Marketing, product, engineering, and agencies run on the same link infrastructure without rebuilding their workflows.

Real-time analytics

Clicks, CTR, geo, device, and conversion events update in under five seconds — funnels and cohorts included.

<0s

Analytics freshness

Scales with your traffic

Multi-region edge cache, hot OLTP, and cold analytics tier — every click flows through the right surface at the right cost.

Edge cache
OLTP
ClickHouse

Connect every channel

Web, mobile, QR, ads, and webhooks — every touchpoint becomes a queryable edge in the same workspace graph.

ClicksDomainsUTMDevicesSessionsEvents

Built for low-latency apps

Global anycast edge means sub-50ms redirects for users anywhere — no cold-start, no regional drift.

<50ms

Edge redirect

Short links are not enough.

A shortener shortens a URL. Public URL keeps every destination, campaign, domain, dashboard, and conversion event connected so teams can answer why a click happened and what it produced.

Branded domains, smart targeting, attribution, and analytics on one workspace graph.

Workspace-scoped, audit-ready, edge-fast, real-time recall.

Without a link layer

With Public URL

Clicks disappear into separate dashboards
Clicks, campaigns, domains, and conversions share one workspace graph
UTM rules live in spreadsheets and memory
Reusable UTM templates and duplicate checks keep campaigns clean
Mobile deep links are one-off edge cases
iOS, Android, web fallback, and QR routing use one link record
Reports require manual screenshots and exports
Scheduled reports and shared dashboards are built into the workflow

Throughput stays flat under load

  • Most shorteners spike past 200ms once traffic crosses a few hundred RPS.
  • Edge-cached routes serve from the region closest to the visitor — no cold-start.
  • Click events publish asynchronously, so analytics never block the redirect path.

Median redirect latency vs requests / sec

300240180120601001K5K20K50K50ms280ms310ms
Public URLGeneric shortenerDIY redirect

API primitives for the whole link lifecycle.

  1. Incoming click request
  2. Domain + slug resolution
  3. Edge route cache (Redis)
  4. Targeting rules — geo | device | language | time
  5. Destination selection (web / iOS / Android / fallback)
  6. 302 / 307 redirect to visitor
  7. Async click event publish (Kafka)
  8. Analytics ingest (ClickHouse) + webhooks

One API for links, domains, and analytics.

Create links, attach campaign metadata, verify domains, publish webhooks, and query analytics from the same workspace-scoped API.

  • REST API for links, domains, campaigns, reports, and analytics
  • Webhook delivery for click, conversion, link, and report events
  • Workspace-scoped API keys with bearer auth and SSO controls
Read the API docs →
public-url.example
import { PublicURL } from "@public-url/sdk"

const client = new PublicURL({ apiKey, workspaceId })

const link = await client.links.create({
  domain: "go.acme.com",
  slug: "spring-launch",
  destination: "https://acme.com/pricing",
  campaign: "spring-2026",
})

// https://purl.ink/spring-launch
console.log(link.analyticsUrl)

Live health checks for the Public Url control plane.

The landing page tracks every service liveness and dependency readiness probe through the web status API.

Open status page

Checking

Waiting for first probe

Operational

0

Degraded

0

Outage

0

Polling every 15 seconds

Pricing

One workspace price, every plan. Unlimited short links and the full analytics graph on every tier — you only move up for custom domains, team seats, and governance.

Free

For creators validating their first link system.

$0/month
  • Unlimited short links
  • QR codes & basic analytics
  • 1 workspace, 3 members
  • Community support
Start free

Pro

Most popular

For campaign teams managing branded domains and UTMs.

$29/month
  • Custom domains & UTM templates
  • Shared dashboards & CSV exports
  • Webhooks and REST API access
  • Priority email support
Start trial

Business

For agencies and product teams scaling attribution.

$99/month
  • Multi-workspace & client switching
  • White-label PDF reports
  • Funnels, cohorts, and revenue metrics
  • Dedicated solutions engineer
Start trial

Enterprise

For companies needing governance, SSO, and custom retention.

Custom
  • SAML SSO, audit logs, DPA
  • Custom retention & data residency
  • Dedicated infrastructure & SLAs
  • Solutions architect on call
Talk to sales

Frequently asked questions

Public URL is a link intelligence platform that turns short links into a routing, attribution, and analytics graph for branded domains, UTM campaigns, smart redirects, deep links, and conversion events.

Shorteners shorten links. Public URL keeps every destination, campaign, domain, dashboard, and conversion event connected so teams can answer why a click happened and what it produced.

No. Public URL is designed to sit alongside your existing tools — point any link, webhook, or SDK at it and it starts enriching your data on day one.

Most teams create their first link in minutes. Full SDK and webhook setup typically takes under a day, with dedicated onboarding help available on the Enterprise plan.

Public URL runs on workspace-scoped access, audit logs, and SSO, and follows SOC 2-aligned controls. A formal SOC 2 Type II report is on our roadmap; a DPA and GDPR support are available on the Business and Enterprise plans.

Build the link layer your campaigns need.

Create branded links, route every visitor to the right destination, and keep attribution connected from click to conversion.