Frequently asked questions

Twenty honest answers about how Duck Stats actually works. If yours isn't here, email [email protected] — real human, usually under a business day.

Getting started

From zero to first alert in under ten minutes.

How do I sign up?

Go to stats.duckingstats.com/upgrade, enter an email, set a password, and confirm via the verification link. You're on the Free tier immediately — no credit card, no trial countdown. Add your first monitor from the dashboard within about a minute.

Do I need to install anything?

No, not for HTTP, TCP, ping, MySQL, or push monitors — those run entirely from our probe locations against your public endpoints. The optional server-health agent is a tiny POSIX shell script you drop on a Linux box only when you want CPU, RAM, disk, and load tracking pushed every minute.

How long does setup take?

For a single HTTP monitor: about 30 seconds — paste the URL, pick the probe locations, hit save. The agent takes one curl command and one reboot of cron. Wiring up a full status page with custom domain and Discord alerts is usually under 10 minutes start to finish.

Can I import monitors from another service?

Yes — we'll do it for you. Email [email protected] with an export from your current provider (UptimeRobot, HetrixTools, Better Stack, StatusCake all let you dump configs) and we'll bulk-import them via the API. Typically takes us a day, no charge.

Monitoring basics

What you can monitor, how often, and what an alert actually means.

What monitor types are supported?

HTTP/HTTPS (with custom headers, body matching, JSON path assertions, basic auth, status code expectations), TCP port checks, ICMP ping, MySQL/MariaDB connection checks via SELECT 1, push monitors (heartbeat URL), server-health (via the agent), process checks (pgrep pattern), and service checks (systemctl is-active).

How often does it check my services?

Free tier polls every 5 minutes from a single location. Starter and Premium drop that to 1 minute. Enterprise goes as low as 20 seconds. You can also configure longer intervals per monitor — CDN and low-priority checks usually sit at 5 minutes regardless of plan to keep noise down.

What's a "consensus" DOWN alert?

Every probe location checks the same target on the same schedule. A monitor only flips to DOWN — and only fires alerts — when every selected probe agrees the target is unreachable. If three probes see 200 OK and one sees a timeout, the monitor stays UP and the dissenting probe is logged for diagnostics. That single rule kills the entire category of false page-outs caused by one bad backbone route.

What happens when a probe location itself goes down?

That probe stops contributing to consensus until it recovers — the remaining probes carry the check. We publish probe-network status on stats.duckingstats.com/status/probes so you can see at a glance which locations are healthy. A degraded probe never causes a false DOWN on your monitors; it just means consensus runs on fewer voters until it comes back.

Why is my monitor flagging warn instead of DOWN?

Warn means partial degradation — latency above your threshold, partial probe agreement, or a host metric above the soft cap. Warn goes only to channels you've marked as info-tier and never wakes you up. Critical (full consensus DOWN, hard cap exceeded) is what fires the loud channels. CPU and disk pressure are always info-tier and will never escalate by themselves — by design.

Probe network

Where the checks come from and how to make them play nice with your firewall.

Where are your probe locations?

Phoenix (US Southwest), Buffalo (US Northeast), Dallas (US Central), Ukraine (EU East), and a secondary Phoenix on a separate network — five total on the Premium tier. Each is on a different upstream transit provider, so a single backbone outage can't take them all offline at once. Enterprise customers can request additional regions (EU West, Asia Pacific, South America).

Can I choose which probes check which monitor?

Yes. Per monitor you pick the probe set — useful when an internal-only API should only be checked from Phoenix (because that's where your VPN terminates), while your public DNS should be checked from all five. You can also adjust the quorum: default is unanimous, but you can require 3-of-5 or any other ratio.

Do your probes use a static IP I can allowlist?

Yes. Each probe location has a documented stable egress IP — published at stats.duckingstats.com/probes and updated in our changelog when anything changes. We give 30 days' notice before changing a probe IP. Add them to your firewall allowlist if you're checking an authenticated endpoint.

Pricing & billing

Four tiers, no overage charges, cancel any time.

How much does Duck Stats cost?

Free for up to 10 monitors with single-location 5-minute checks. Starter is $5/month for 20 monitors with 1-minute checks across 3 probe locations and the server agent. Premium is $19/month for 250 monitors with full 5-location consensus, unlimited status pages, custom domains, and full API access. Enterprise is custom — unlimited monitors, 20-second intervals, SSO, self-hosted option. Full matrix on the pricing page.

Can I cancel anytime?

Yes. Paid plans are month-to-month, cancellation is two clicks in the Stripe customer portal. You keep the paid tier through the end of the current billing period, then downgrade to Free — monitors stay configured, the ones above the Free cap pause rather than getting deleted.

Do you offer annual billing?

Yes — pay annually and get 3 months free (effectively 25% off). Available on Starter ($45/yr) and Premium ($171/yr) from the Stripe portal. Enterprise contracts default to annual and are priced separately.

Privacy & security

What we collect, where it lives, and how to delete it.

What data do you collect?

Only what's needed to run the monitors: your account email, your monitor configurations, the probe results (status, latency, response headers), and metrics pushed by the agent. No session replay, no third-party analytics, no Google Analytics, no Facebook pixel. We run a single first-party tracking pixel on the marketing pages that records page views and nothing else. Full details in our privacy policy.

Where does my data live?

MySQL HeatWave on Oracle Cloud Infrastructure, hosted in Phoenix (US). Daily encrypted backups to a separate OCI region. Monitor configs and account data never leave Oracle. Probe results are written to the same database via the probe network's encrypted upstream connection.

Can I delete my data?

Yes. From account settings, hit Delete Account — we keep your data for 30 days in case you change your mind, then it's gone for real (DB rows; backups age out within 60 days). You can also request a JSON export of everything we have on you before deleting, or email [email protected] for a manual data request under GDPR / CCPA.

Self-hosting

For people who want to run the whole thing on their own infra.

Is Duck Stats open source?

Duck Stats is a soft fork of Peekaping, which is MIT-licensed. The fork lives at github.com/eddiel-iduck/duckstats (private during heavy development; will be opened on request). The probe agents and status-page templates are open and documented.

Can I self-host Duck Stats?

Yes, on Enterprise. You get a docker-compose bundle (web, API, worker, producer, ingester, Redis, MySQL) plus a probe-runner image you deploy to any region you control. Enterprise pricing covers the bundle, deployment support, and quarterly upgrade releases. Email [email protected] to discuss requirements.

Still curious?

Email [email protected]. A real human runs the inbox — usually replies within a business day. Or start free and explore from the inside.

Email us Start free