Badger TRACKER
Defensive canary tokens

Turn any link into a tripwire.

Badger makes innocent-looking URLs that quietly note down everyone who opens them, and exactly how. Think of it as a canary token you fully control: drop a link and watch the metadata roll in.

badger.example.com
What can this thing do?

Everything a good tripwire needs

Plant a link, then learn exactly who walked into it, and with what.

Four trap flavors

Tracking pixels, redirect links, preview clones and fully custom fake pages. Pick the disguise that fits the situation.

Deep metadata capture

IP chain, geo, ISP and ASN, parsed browser and OS, referer, language, and the complete raw request headers.

Bot vs. human verdict

A built-in heuristic flags automated clients, and tells you the reason it decided that. Less noise, more signal.

Link preview cloning

Copy any URL's OpenGraph card so your trap unfurls identically in Slack, Discord or X, then forwards to the real thing.

Custom preview builder

Design your own fake link preview with a live preview, then choose: redirect humans onward, or show them your own HTML.

Live feed

Every hit across every trap, streaming in and auto-refreshing, so you never have to babysit the dashboard.

See it in action

A dashboard that is actually nice to look at

Warm, friendly, and calm. No scary hacker terminal here.

custom builder
Custom preview builder

Design the perfect bait

Type a title, description and image URL and watch the social-card preview update live, exactly as it will unfurl in chat. Then choose what a human gets: a quiet redirect, or your own custom HTML page.

Every visit is logged the same way, no matter which path they take.

Trap types

One link, five disguises

Each trap is just a URL you plant somewhere. What the visitor sees depends on the type, but every open is logged.

pixel

Invisible tracking pixel

A 1x1 image you embed in emails and documents. The visitor sees nothing; you see everything.

redirect

Redirect link

Looks like a totally normal short link, then quietly forwards the visitor on to a real URL.

clone

Preview clone

Copies a target's OpenGraph card so the link unfurls identically, then forwards to the original.

custom

Custom page

Your hand-crafted preview plus a redirect, or your own HTML page. Suggest a believable destination.

decoy

Friendly decoy

A soft "loading..." landing page that reveals nothing while it logs the visit in the background.

What gets captured

The juicy details, every single hit

  • Full IP chainX-Forwarded-For, CF-Connecting-IP, X-Real-IP and the socket address.
  • Geo & networkCountry, city, region, ISP, org and ASN. Toggleable, stays local if you want.
  • Client fingerprintBrowser, version, OS, device and engine, parsed from the User-Agent.
  • Headers & hintsReferer, Accept-Language and the complete raw request headers.
  • Bot verdictHuman or bot, plus the heuristic reason it decided that.
  • Unique visitorsDistinct IPs counted per trap, so repeat opens never inflate the picture.
Self-host in one command

Your data, your server, zero setup

A prebuilt image ships to GitHub Container Registry on every push. Pull it and you are running.

# pull and run the prebuilt image
docker run -d --name badger \
  -p 3000:3000 \
  -e NUXT_PUBLIC_BASE_URL=https://badger.example.com \
  -v badger-data:/app/.data \
  ghcr.io/disane87/badger:latest

Put it behind a reverse proxy so X-Forwarded-For carries the real client IP. The dashboard has no auth yet, so keep it on a leash.

A defensive tool, so keep it on a leash

Badger is for authorized security testing and monitoring of assets you own or are allowed to watch. Tracking or cloaked links against third parties without consent may break privacy law, and impersonating a brand you do not control is plain phishing. Be a good human.