Skip to content
Publifying Links

Free for your first 10 links

Short links that tell you who actually clicked

Paste any URL, get a short link in under a second. Every click comes back with the country, the device and the referrer behind it — so you stop guessing which channel worked.

10 of 10 free links left

No credit card No signup to try Links never expire

links.publifying.com/dashboard

Clicks

18,402

+12.4%

Unique

11,930

+8.1%

Links

248

+6

Top country

Spain

32%

Clicks over time

30d

Top countries

  • Spain 32%
  • United Arab Emirates 26%
  • Pakistan 21%
  • Germany 14%

Links shared across

Newsletters Instagram bio Print & QR LinkedIn Podcasts SMS campaigns Affiliate links Docs & PDFs

Everything after the click

Shortening is the easy part

What matters is what you learn once the link is out in the world. Here is what you get the moment someone clicks.

Analytics that answer questions

Not just a click count. Clicks over time, top countries and cities, the device and browser split, and which referrers are actually sending traffic.

92

Countries tracked

48

Referrers tracked

3

Devices tracked

Redirects in ~40ms

Every link resolves from cache. A redirect is one lookup and a 302 — no database query, no session, no page render.

CSV in, CSV out

Upload a spreadsheet of URLs and download the same file back with a short link beside every row. Built for campaign launches, not for ten links at a time.

original_urlshort_url
example.com/spring-sale /k7Rm2xQ
example.com/lookbook /p3Wd9zL

A REST API you can actually read

Scoped keys, per-plan rate limits, and copy-paste examples in seven languages. Idempotent by default — shortening the same URL twice returns the same link.

POST /api/v1/links
Authorization: Bearer plk_live_…

{ "url": "https://example.com/page" }

Private by construction

We never store a raw IP address. Visitors are identified by a one-way hash, and Do Not Track is honoured.

Custom aliases

Swap a random code for something readable. /spring-sale reads better in a newsletter than /k7Rm2xQ.

Expiry and click caps

Retire a link on a date, or after N clicks. Pause any link instantly without deleting its history.

Analytics

Know which channel earned the click

The same link in a newsletter, a tweet and a printed flyer performs completely differently. We show you which is which, down to the city.

  • Geography down to the city

    Country, region and city for every click, with the raw IP discarded before it is ever written.

  • Device, browser and platform

    Find out that 78% of your newsletter traffic is on mobile before you redesign the landing page.

  • Real referrer data

    Which sites are actually sending traffic — not just "direct" for everything.

  • Bots kept out of the numbers

    Crawler hits are recorded and labelled, then excluded from your headline counts.

See it on your own links

Top referrers

Last 30 days
  • newsletter 4,820
  • linkedin.com 3,110
  • google.com 2,240
  • x.com 1,180
  • Direct 890

Devices

  • Mobile 68%
  • Desktop 26%
  • Tablet 6%

Recent clicks

  • Madrid, Spain

    iPhone · Safari

    2m ago
  • Dubai, UAE

    Windows · Chrome

    6m ago
  • Lahore, Pakistan

    Android · Chrome

    11m ago
  • Berlin, Germany

    macOS · Firefox

    14m ago

How it works

Three steps, about ten seconds

  1. 1

    Paste your URL

    Drop any address into the box. No account, no credit card, nothing to install.

  2. 2

    Share the short link

    Email, social, a QR code, a print ad. It resolves anywhere, instantly.

  3. 3

    Watch the clicks arrive

    Open your dashboard to see how many people clicked, from where, and on what.

Developers

Build links into your product

Everything the dashboard does, your code can do. JSON in, JSON out, bearer auth, and rate limits that scale with your plan.

7 languages
Copy-paste examples
3 scopes
Read-only keys are really read-only
1,200/min
Top-plan rate limit
200 vs 201
Idempotent by default
Read the API reference
curl -X POST https://links.publifying.com/api/v1/links \
  -H "Authorization: Bearer plk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "url": "https://example.com/spring-sale" }'
const res = await fetch("https://links.publifying.com/api/v1/links", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.PUBLIFYING_API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({ url, title: "Spring sale" }),
});

const { data } = await res.json();
console.log(data.short_url); // https://links.publifying.com/k7Rm2xQ
use Illuminate\Support\Facades\Http;

$link = Http::withToken(config('services.publifying.key'))
    ->acceptJson()
    ->post('https://links.publifying.com/api/v1/links', [
        'url'   => 'https://example.com/spring-sale',
        'title' => 'Spring sale',
    ])
    ->throw()
    ->json('data');

return $link['short_url'];
import os, requests

response = requests.post(
    "https://links.publifying.com/api/v1/links",
    json={"url": "https://example.com/spring-sale"},
    headers={"Authorization": f"Bearer {os.environ['PUBLIFYING_API_KEY']}"},
    timeout=10,
)
response.raise_for_status()

print(response.json()["data"]["short_url"])

Pricing

Start free, upgrade when it pays for itself

Every plan includes unlimited redirects and real-time click tracking. You pay for volume and for the tooling around it.

Free

Try the service. 10 short links, basic click counts.

$0 /month

Start free
  • 10 short links
  • Total click count
  • Links never expire
  • No API access

Starter

For a single site or a small campaign.

$5 /month

Choose Starter
  • 500 short links
  • Full click analytics
  • CSV bulk upload (1,000 rows)
  • 1 API key — 60 req/min
  • Custom aliases
Most popular

Growth

For teams running links across several channels.

$10 /month

Choose Growth
  • 5,000 short links
  • Geo, device & referrer breakdowns
  • CSV bulk upload (10,000 rows)
  • 3 API keys — 300 req/min
  • 1 year analytics retention

Scale

Unlimited links and the throughput to match.

$15 /month

Choose Scale
  • Unlimited short links
  • Everything in Growth
  • CSV bulk upload (100,000 rows)
  • 10 API keys — 1,200 req/min
  • Priority queue processing

Compare every feature side by side →

Questions people actually ask

Do I need an account to try it?

No. You get 10 links straight from the box above, and they keep working forever. Create an account when you want to see who is clicking — anything you already shortened moves across with you.

What happens to my links if I stop paying?

They keep resolving. You drop back to the free plan's limits for creating new ones, and the detailed breakdowns are hidden until you resubscribe. We never break a link that is already out in the world.

Can I use my own domain?

Yes. The short domain is configured separately from the app, so links can be issued on any host you point at us.

Do you count bot traffic?

We record it and label it, then keep it out of your headline numbers. A dashboard inflated by Slack and Twitter unfurl bots is a dashboard nobody trusts.

How fast are the redirects?

A warm link resolves from cache in roughly 40ms plus network latency — one lookup and a 302, with no database query and no page render on the path.

Is there a limit on clicks?

No. Every plan has unlimited redirects. The plan limits how many links you can create, not how popular they get.

Ready to see who is clicking?

Create a free account in under a minute. The links you already made come with you.

No credit card. Cancel any time. Your links keep working either way.