The StatHat alternative you migrate to by changing one URL.
EzStat speaks the same /ez, /c and /v wire format as StatHat. Point your calls at api.ezstat.dev, use your EzStat key, and you have a live chart in minutes. Flat pricing from $20/mo.
Change one base URL — most StatHat clients let you override it in one line; hardcoded hosts need a find-and-replace. Stats auto-create on the first POST. Live chart in about five minutes.
Change the host, use your EzStat key. Nothing else to rewrite.
EzStat is wire-compatible with StatHat's EZ and Classic API — same parameters, same response shape. Your /ez, /c and /v calls all move the same way.
# BEFORE — your existing StatHat call
curl -X POST https://api.stathat.com/ez \
-d "ezkey=YOUR_STATHAT_KEY" -d "stat=signups" -d "count=1"
# AFTER — EzStat. Change the host, use your EzStat key. Same params, same response shape.
curl -X POST https://api.ezstat.dev/ez \
-d "ezkey=YOUR_EZSTAT_KEY" -d "stat=signups" -d "count=1"
# The Classic /c (counter) and /v (value) endpoints move the same way:
# https://api.stathat.com/c -> https://api.ezstat.dev/c
# https://api.stathat.com/v -> https://api.ezstat.dev/v// Node — most StatHat clients let you override the base URL
await fetch("https://api.ezstat.dev/ez", {
method: "POST",
headers: { "Content-Type": "application/x-www-form-urlencoded" },
body: new URLSearchParams({
ezkey: "YOUR_EZSTAT_KEY",
stat: "signups",
count: "1",
}),
});# Python
import requests
requests.post("https://api.ezstat.dev/ez", data={
"ezkey": "YOUR_EZSTAT_KEY",
"stat": "signups",
"count": 1,
})Step-by-step in the migration guide and the docs.
Not a Datadog or Grafana replacement — no traces, logs, APM or host monitoring. It is the “count a number, see it charted, get pinged if it moves” primitive — the thing StatHat did.
Three small steps to a live chart
Get your key
Create an account and copy your EzStat API key from Settings.
Change one base URL (and swap the key)
Point calls at api.ezstat.dev and use your EzStat key instead of your old StatHat one.
POST and watch it land
Send one point — the stat auto-creates and shows on the chart. That's it — you're live.
Downloaded your StatHat export? Bring it with you.
If you saved your StatHat CSV or JSON export before it closed, upload it — EzStat recreates each stat and backfills its points within your plan quota. No StatHat key needed. It is not a one-click bulk importer, and a live token-pull is not possible because StatHat's API is offline. You can also backfill live points by passing a unix t timestamp on ingest.
Full import walkthrough in the migration guide.
A flat per-stat ladder — you always know the bill
No per-GB, per-host, per-seat or per-call metering. Start on Indie at $20/mo, then $49 / $99 / $149 / $299 / $499 as you grow.
Live today on EzStat
/ez, /c and /v endpoints — one URL change, no rewrite.Live now — a real, running service with fast, reliable ingest.
Coming from StatHat — questions
What exactly do I change to move my code to EzStat?
Two things: point your calls at api.ezstat.dev instead of api.stathat.com, and use your EzStat API key. EzStat implements the same EZ endpoint (/ez) and the Classic counter/value endpoints (/c and /v) with the same parameters and response shape, so nothing else has to be rewritten. Stats auto-create on the first POST.
Is it really drop-in — what is compatible?
The /ez, /c and /v endpoints are wire-compatible with StatHat. Same params, same JSON response shape, so your calls still work after a hostname swap. Most StatHat client libraries let you override the base URL, so the change is often a one-line config edit; hardcoded hosts need a find-and-replace.
Can I bring my StatHat history across?
If you downloaded your StatHat CSV or JSON export before it closed, upload it and EzStat recreates each stat and backfills its historical points within your plan quota — no StatHat key needed, just the file. It is not a one-click bulk importer, and a live token-pull is not possible because StatHat's API is offline. You can also backfill live points by passing a unix timestamp (t) on ingest.
Is there a free tier, and how does pricing work?
There is no open free tier right now. Pricing is a flat per-stat ladder from $20/mo (Indie) with no per-GB, per-host, per-seat or per-call metering, so you always know the bill. A card + email-gated trial is coming soon.
Can I self-host EzStat?
No — EzStat is a hosted service. If self-hosting is a hard requirement, statsd with Grafana or Uptrace self-host are the honest answers. EzStat is for people who want the low-ops 'just track a number' primitive without running the stack.
Where are alerts, the weekly digest and the ask-your-data AI?
On the roadmap and marked coming-soon — not shipped yet. Live today is ingest, auto-charts, share/embed and CSV/JSON export.
Did StatHat shut down — is my data locked in here?
If your calls to api.stathat.com stopped working and your dashboards went dark, point your existing code at EzStat and keep going. Your data on EzStat is always yours: CSV and JSON export any time, no lock-in. Billed monthly, cancel any time and export access stays through the period.
Comparing options? See the honest StatHat vs EzStat table.
Bring your stats home.
Change one base URL and use your EzStat key — most StatHat clients let you override it in one line; hardcoded hosts need a find-and-replace. You're live in about five minutes. Billed monthly, cancel any time; your data exports any time, no lock-in.
A card + email-gated free trial is coming soon. Want it at launch? Tell us here. Bringing your history or a team? We'll help you migrate.