PingOps: Uptime Monitor
Server, API & website uptime
Free · In‑App Purchases · Designed for iPad. Not verified for macOS.
v3.4 — pull-to-refresh feels instant. Dashboard stays smooth while cloud history syncs. Subscriptions screen now shows every plan, always.
PingOps is a fast, no-fuss uptime monitor that lives on your iPhone. Add any public URL — your website, your team's API, the AI service your tools depend on — and PingOps tells you the moment it stops working. Run checks on-device, or opt into Cloud monitoring so checks keep running while your phone sleeps.
WHY MOBILE UPTIME MATTERS
Your day runs on a stack of remote services: AI assistants, cloud dashboards, the apps your team ships. When one goes down at 2am or in the middle of a meeting, you don't always have a laptop in front of you. PingOps gives you a glance from the phone in your pocket.
WHO IT'S FOR
• Site owners who want to know the moment their blog or business goes down
• Engineers running a small API who don't need an enterprise monitoring stack
• AI-tool users who want to spot service outages before fighting "weird errors"
• Anyone who'd rather glance at a phone than open a dashboard
TWO WAYS TO RUN CHECKS
On-device (default, no account needed)
• Manual and automatic checks while the app is open
• No account, no telemetry, no data leaves your device
Cloud monitoring (sign in with Apple)
• Server-side checks run on a tier-appropriate schedule (Free 5 min, Pro & Archon 1 min) — every day, even when your phone is closed
• Push alerts when an endpoint fails — aggregate by default, per-endpoint on Pro/Archon, with a 15-minute reminder while it stays down
• Lock Screen Live Activity for the active incident — Snooze 10m, Snooze 1h, or Open straight into the failure timeline
• History syncs back to the device — full local archive
• Sign in with Apple — no password, no email harvesting
WHAT IT DOES
• Monitors any HTTP/HTTPS endpoint (GET, POST, PUT, DELETE, HEAD)
• Validates status codes, response keywords, and JSON fields — not just "did the socket open"
• Groups your endpoints with optional SLO targets
• Live Activity on the Lock Screen for active incidents — snooze without unlocking
• Drag-and-drop reordering between groups
• Deep-link sharing (pingops://) so a teammate can import with one tap
• Quiet by default — one rolling notification with a count, never per-endpoint spam
PRIVATE BY DESIGN
The on-device checker stores everything locally — no account, no telemetry. Cloud monitoring is strictly opt-in: only endpoints you flip into Cloud mode reach our Cloudflare Workers proxy, request bodies and custom headers are encrypted per-user, and aggregate alerts contain only a count — never endpoint names or URLs.
LIMITATIONS WORTH KNOWING
On-device checks only run while the app is open — iOS doesn't let third-party apps poll endpoints continuously in the background. Cloud monitoring fixes that gap on your tier's cadence. PingOps is for quick, glanceable answers — not enterprise-grade synthetic monitoring.
Some bot-defended hosts (Google, Cloudflare-protected sites, Akamai-protected sites) reject automated traffic from cloud IPs. If you're monitoring one, point PingOps at a /health or /status endpoint — the app surfaces a tailored failure reason when this happens.
PRICING
Free download, unlimited on-device monitoring. Cloud is free for 2 endpoints at 5-min intervals.
• Cloud Pro — 10 endpoints, 1-min interval, 30-day history, per-endpoint pushes, weekly SLO digest, 3-device sync. From $3.99/mo or $34.99/yr.
• Cloud Archon — 30 endpoints, 90-day history, on-device SSL expiry tracking, Family Sharing across 5 devices, plus everything in Pro. From $9.99/mo or $84.99/yr.
Localized pricing shown in-app. Subscriptions auto-renew until cancelled in Settings.
Use of PingOps and any in-app subscription is governed by Apple's Standard EULA: https://www.apple.com/legal/internet-services/itunes/dev/stdeula/
Privacy Policy: https://arkynate.com/pingops/privacy
more v3.10 — A reliability release. Two independent reviews of the app and the cloud backend found 66 improvements; all of them are in this update.
ALERTS AND LOCK SCREEN
• Fixed: per-endpoint alerts and lock-screen card updates sent by PingOps Cloud could fail to reach your iPhone. They now arrive.
• A card you dismiss stays away until that outage is over. A snoozed card comes back once, when the snooze ends.
• The summary card for three or more incidents now clears itself when they recover, even with the app closed.
• Snooze and Re-check on a notification now work for cloud endpoints.
• Signing in to PingOps Cloud no longer needs an app restart before lock-screen cards can start.
• PingOps Cloud notifications arrive in the app's language.
SUBSCRIPTIONS
• Updates from Apple are applied in order, so a delayed message can no longer downgrade a renewed plan, and billing grace periods are always honoured.
INCIDENTS AND TRENDS
• Faster with long histories. Incidents now shows how far back the history on your iPhone goes.
FIXES
• The discount label on the German and Spanish subscription screen showed a garbled number.
• Endpoint details no longer flash "No checks yet" while loading.
3.10.0 Oct 1
v3.9 — A design and reliability release. Three independent reviews covered the app's design, the cloud backend and the whole subscription journey; 143 findings were fixed. v3.9.1 adds a rebuilt lock-screen experience.
LOCK SCREEN AND DYNAMIC ISLAND
• The incident card can always be removed: the Dismiss button works even when the app is closed, a dismissed card stays dismissed, and Settings → Lock screen has "Clear all".
• With PingOps Cloud, the card is updated and ended by our server, so it appears when an endpoint fails and disappears when it recovers, without the app being open.
• The Dynamic Island now shows the endpoint's name and has Dismiss and Snooze buttons. Three or more incidents collapse into one summary card.
A NEW LOOK
• Status is carried by shape as well as colour, so the dashboard reads correctly for colour-blind users, and the whole palette was retuned with high-contrast variants.
• New Incidents tab. PingOps Cloud moved into Settings.
• Favourites pin in place, the add-endpoint form starts with just Name and URL, Trends gains a 6-hour window, and the iPad dashboard uses two columns.
SUBSCRIPTIONS
• If a purchase cannot be matched to your account, the app now tells you why instead of showing a plan you do not have.
• Billing grace periods keep your plan active. Family Sharing works for Archon. Introductory offers and offer codes are shown and redeemable in-app.
• If a plan lapses, extra cloud endpoints are paused rather than deleted, and resume when you re-subscribe.
CLOUD BACKEND
• Account linking, check dispatch and alert deduplication were hardened, and the status page loads faster.
LOCALIZATION
• Fixed number formatting in Spanish and a VoiceOver label in Japanese; hundreds of catalog corrections across 日本語, Español and Deutsch.
3.9.1 Sep 25
v3.8 — A reliability release. Two independent reviews walked every screen and every backend path and fixed 200+ issues, from one-line polish to silent data bugs.
FIXED WHAT WAS BROKEN
• The SLO settings screen can be opened again, and the weekly SLO digest is delivered on schedule.
• The dashboard no longer flags a healthy fleet as "needs attention" when endpoints are merely slow, and the tab badge now matches what you see.
• Cloud history no longer develops gaps after a sync, and every check shows where it ran from.
• Saving an endpoint to the cloud tells you when the mirror fails instead of leaving a phantom row, and duplicating a cloud endpoint now mirrors the copy.
• Deleting an endpoint asks first, ends its lock-screen Live Activity, and no longer leaves a stale card behind.
SECURITY AND PRIVACY
• Time-sensitive failure alerts now truly break through Focus.
• Shared endpoints redact tokens in URLs as well as headers, and copies of unredacted credentials expire from the clipboard.
• Endpoints arriving via a pingops:// link are validated and confirmed before anything is added.
• Your cloud session is now bound to this device.
LOCALIZATION
• Hundreds of strings that were English-only now appear in 日本語, Español and Deutsch, including the lock-screen Live Activity.
CLOUD BACKEND
• Cloud checks send your configured headers and body, follow redirects safely, and stop alerting devices that no longer exist.
• Faster public status pages, honest subscription verification, and sign-in fixes for the upcoming Android client.
3.8.0 Sep 14
v3.6 — Set a response-time budget per endpoint, catch "slow but still up" before it turns into an outage, and a faster, lighter cloud refresh.
PER-ENDPOINT TIMEOUTS
• Give each endpoint its own request timeout (1–60s) instead of the one-size-fits-all 15s. Tighten it for snappy APIs, loosen it for backends that are slow but fine.
• Works the same for local and cloud checks — cloud endpoints honor your timeout on the server too.
NEW "SLOW" WARNING
• Set a response-time threshold and PingOps flags an endpoint that's still up but slower than your budget — a yellow "Slow" badge instead of plain green.
• Softer than a failure: the endpoint is up, it's just over your latency budget. Catch creeping slowness before it becomes a real outage.
• History tags the exact checks that breached, so you can see when it started.
FASTER CLOUD REFRESH
• Cloud sync now pulls your whole fleet's history in a single request instead of one per endpoint — noticeably quicker and lighter, especially on large fleets.
What v3.5 shipped, still here:
• Pull-to-refresh is local only; cloud sync has its own button.
• Small fresh-install pulls — last hour on cold start, lazy 24h per endpoint on open.
• Actionable cloud-sync error banners + "Force resync from cloud".
What v3.3 shipped, still here:
• Public status pages (Pro & Archon) — never exposes endpoint URLs, headers, or bodies.
• Full localization to 日本語 / Español / Deutsch alongside English.
3.6.0 Jun 12
v3.5.1 — Pull-to-refresh is local only. Cloud sync gets its own button. Fresh-install pulls are dramatically smaller.
PULL-TO-REFRESH IS LOCAL ONLY
• Drag down to recheck local endpoints — that's it. No more spinner sitting through a cloud round-trip on every pull.
• Cloud endpoints have a dedicated iCloud button in the dashboard toolbar. Tap it to sync server-side results on demand.
• Foreground polling + scene activation still keep the dashboard fresh in the background without you doing anything.
FRESH-INSTALL CLOUD SYNC IS WAY SMALLER
• First launch (or returning after a long absence) now pulls only the last hour of cloud check results — sub-second on a fleet that used to download tens of thousands of rows on cold start.
• Opening any endpoint detail view lazy-loads the last 24h for that one endpoint — sparkline + uptime band light up immediately on first open.
CLOUD SYNC ERRORS NO LONGER SILENT
• Cloud-side endpoints that fail to land in your dashboard now surface an actionable error banner instead of disappearing without trace.
• New "Force resync from cloud" option in Cloud Settings — clears every cloud endpoint's sync cursor and re-pulls. Use it if a reinstall left the dashboard missing endpoints that exist on another device.
What v3.5 shipped, still here:
• Background catch-up + atomic refresh during long cloud sync.
• Absolute time labels (14:23 / May 24, 23:59) instead of stale "5 minutes ago".
• Memory-safe streaming writer path for multi-day offline catch-ups.
What v3.3 shipped, still here:
• Public status pages (Pro & Archon) — never exposes endpoint URLs, headers, or bodies.
• Full localization to 日本語 / Español / Deutsch alongside English.
• Bidirectional cloud sync with reinstall recovery.
3.5.1 May 28
v3.5 — Background catch-up, atomic refresh, absolute time labels.
CLOUD CATCH-UP IS SMOOTH NOW
• Foreground after hours offline? The dashboard stays responsive while the catch-up downloads in the background, then snaps to the new state in one update at the end — no more "is it frozen?" pause while it syncs.
• Pull-to-refresh on a 30-endpoint fleet feels atomic: the whole list updates together instead of rippling row by row.
• The loading banner now stays pinned to the top of the dashboard while a long catch-up runs — you can scroll your endpoints and still see progress.
ABSOLUTE TIME LABELS
• Goodbye stale "5 minutes ago" — those snapshots never actually ticked, so they got stale the moment the row drew.
• Same day → local 24-hour time (e.g. 14:23). Older → date + time (e.g. May 24, 23:59). Always honest about WHEN something happened, in your device's timezone.
UNDER THE HOOD
• One SQLite save per cloud pull instead of one per endpoint — eliminates the multi-hang "MainActor frozen" feel during long catch-ups.
• Streaming, memory-safe cloud-pull writer path for the worst case (30-endpoint Archon, multi-day offline).
• Live Activity + notification body construction no longer fault entire endpoint histories — constant-time SQLite limit-1 fetches instead.
What v3.4 shipped, still here in v3.5:
• Dashboard responsiveness during cloud syncs (background-actor SwiftData writes, denormalised hot-path reads, predicate-based history pruning).
• Parallel pull-to-refresh fan-out (capped to 6 concurrent), 60-second server-cadence poll, smarter notification/Live Activity gating.
• Always-visible subscription plans, persistent history filter, orbital splash matching the icon.
What v3.3 shipped, still here:
• Public status pages (Pro & Archon) — never exposes endpoint URLs, headers, or bodies.
• Full localization to 日本語 / Español / Deutsch alongside English.
• Bidirectional cloud sync with reinstall recovery.
3.5.0 May 26
v3.4 — performance overhaul + UX polish.
PERFORMANCE (the big one)
• Dashboard stays responsive while cloud history loads in the background — writes happen off the main thread via a dedicated background actor, so scroll, taps, and navigation keep working during a poll tick.
• Pull-to-refresh is snappy now. Local checks fan out in parallel (capped to 6 concurrent); cloud sync runs in the background and surfaces its own progress banner — the gesture spinner no longer waits on the slow path.
• Pro/Archon foreground polling now matches the 1-minute server cadence (was 30s) — half the work, same freshness.
• Notification + Live Activity evaluators only fire when something failure-relevant lands. Most polls land successful rows only and now skip the SLO walk entirely.
• Major reduction in main-thread work: denormalised endpoint state for the dashboard rows, predicate-based history pruning, and an in-actor session-token cache that stops thrashing the keychain.
UX
• Subscriptions screen always shows every plan — even Archon. Your current plan is tagged "Current"; upgrade options stay one tap away.
• History filter ("All" / "Failures only") persists across launches and navigation.
• New animated splash background — orbital glow that matches the app icon.
• Live Activity sparkline cleanup on endpoint delete (no orphan tail entries between recreates).
EARLIER IN THIS UPDATE (v3.3)
• Public status pages (Pro/Archon) — shareable read-only view of your cloud endpoints' uptime; URLs/headers/body never exposed.
• Full localization to 日本語 / Español / Deutsch on top of English, with a first-launch language picker and a Settings → Language row.
• Bidirectional cloud sync — cloud is the source of truth; cloud rows removed on another device flip back to Local locally (history preserved, never silently deleted).
• Reliability fixes: StoreKit → cloud tier sync the moment Pro/Archon is recognised, "Clear history" wipes cloud too, first cloud check fires within ~30s of endpoint create, SwiftData cold-launch crash fixed.
3.4.0 May 25
v3.3 — public status pages + full localization.
PUBLIC STATUS PAGE (Pro/Archon)
• New read-only status page you can share with your team or customers — shows live state of your cloud-monitored endpoints.
• Publish from Cloud → Public status page. URL format: arkynate.com/pingops/status/{token}.
• Surfaces only the friendly name, status, uptime % (24h / 7d / 30d), 24h latency sparkline, and last incident. URLs, headers, and request bodies are intentionally NEVER exposed.
• Polls every 60s; the proxy caches the response for 30s so a viral page can't hammer your D1.
• Revoke any time from the same screen — the token becomes a 404 the moment you do.
LOCALIZATION
• PingOps is now translated to 日本語 / Español / Deutsch on top of English. Every screen, error message, push alert, and Live Activity string speaks your language.
• First-launch language picker lets you pick the language before the onboarding carousel — so the rest of onboarding lands in your chosen language.
• Settings → Language lets you switch later. iOS Language & Region remains the default; the in-app pick overrides it for PingOps only.
• Localized App Store listing pages in those four languages — search, screenshots, and description all match.
UNDER THE HOOD
• Pricing localized to 175 storefronts via Apple's automatic pricing (¥600 / €3.99 / £3.49 / R$ 16.90 for Pro, etc.).
• Proxy migration 0006 adds an indexed status_page_token column to users; no impact on existing rows.
RELIABILITY (v3.3.1)
• Pro and Archon subscriptions now sync from StoreKit to the cloud the moment they're recognised on the device — no more "you're at the Free tier limit" message right after upgrading.
• Switching an endpoint from Cloud to Local in its settings now also removes it from the cloud (no more ghost-monitored rows).
• "Clear history" now wipes cloud check results too, not just on-device.
• First cloud check for a new endpoint fires within ~30 seconds of creation instead of waiting a full interval.
WHAT'S NEW IN v3.3.2
• "Sync with cloud" — bidirectional reconciliation. Cloud is the source of truth: local rows tagged as Cloud whose cloud counterpart no longer exists are flipped back to Local (history preserved, never deleted).
• Dashboard pull-to-refresh now also pulls fresh cloud history for cloud endpoints, using a per-device cursor — only new check results travel the wire.
• Subscription page is always accessible. Pro users see Archon upgrade; Archon and Patron users see Manage Subscription (cancel, downgrade, view billing).
• Duplicate now respects your tier cap up front — no more silent ghost copies when you're at the limit.
• Fixes a SwiftData crash that could trip when evaluating failure notifications on a cold launch.
3.3.2 May 25
v3.2 — Push notifications, Live Activity, and cloud sync all get a reliability + polish pass.
PUSH NOTIFICATIONS
• Re-notify while down — if you miss the first alert, you'll get a reminder every 15 minutes while an endpoint stays failing. The bubble replaces in place on your Lock Screen, not stacking.
• APNs holds for up to an hour — pushes survive a phone briefly off Wi-Fi or in low-power mode. Before, Apple dropped them on first failed delivery.
• "Notify on failure" now applies to Cloud endpoints too — the per-endpoint toggle in the form was iOS-only before, so the proxy alerted regardless. Same for the streak threshold and first-failure switches.
• Friendlier alert text when a site rejects automated checks — "Rate-limited — this site is blocking our cloud checks" instead of the bare HTTP code.
LIVE ACTIVITY
• Slimmer Lock Screen card — roughly half the previous height.
• Snooze 10m + Snooze 1h actions actually work (the previous build's intent dispatch was misrouted). Tapping a snooze dismisses the card immediately and recomputes the failing count.
• Re-check removed — Cloud monitoring runs its own re-check schedule, so the manual button was duplicating work.
CLOUD MONITORING
• Pro and Archon now genuinely get the 1-minute check cadence the paywall promises. The old build was sending every cloud endpoint at 5 minutes regardless of tier.
• Foreground sync polls every 30 seconds while the app is open — Cloud rows feel live without pull-to-refresh.
• Self-heal — endpoints whose initial cloud mirror failed silently re-register on the next sync, so a one-shot network hiccup at sign-up no longer leaves an endpoint dark.
• Bot-block detection — when a site returns 429 or 403 with anti-bot signatures, the failure reason explains it and suggests a probe-friendly endpoint instead of showing a raw status code.
DASHBOARD + UX
• Cloud cadence banner explains how server-side checks differ from pull-to-refresh.
• Dashboard + Cloud tab badges show the unhealthy count and any session-expiring-soon warning.
• iPad detail pane shows a fleet summary instead of an empty placeholder.
• Search filter handles "no matches" with a clear-search button.
• Sheet detents on Auto-refresh, Move to group, and cURL import so they stop covering the dashboard.
• "Send debug bundle" in Settings → About exports a redacted JSON snapshot for support threads — endpoint names + URLs intentionally NOT included.
If you're new to PingOps:
CORE
• On-device monitoring — local mode is free, no account, never phones home.
• Cloud monitoring — Sign in with Apple, flip an endpoint to Cloud mode, and a Cloudflare-backed proxy checks it on a tier-appropriate cadence (Free 5 min, Pro & Archon 1 min). Push alerts when something breaks.
• Validates status codes, response keywords, and JSON fields — not just "did the socket open."
• Live Activity for active incidents — snooze without unlocking.
PLANS
• Free — 2 cloud endpoints, 5-min interval, 24h history.
• Pro — 10 cloud endpoints, 1-min interval, 30-day history, per-endpoint pushes, weekly SLO digest, 3-device sync. From $3.99/mo or $34.99/yr.
• Archon — 30 cloud endpoints, 90-day history, SSL expiry tracking, Family Sharing, 5-device sync, plus everything in Pro. From $9.99/mo or $84.99/yr.
PRIVACY
• Cloud monitoring is opt-in per endpoint. Local endpoints never leave your device.
• Request bodies and custom headers are encrypted per-user.
• Aggregate alerts contain only a count — never endpoint names or URLs.
Use of PingOps and any in-app subscription is governed by Apple's Standard EULA: https://www.apple.com/legal/internet-services/itunes/dev/stdeula/
3.2.0 May 21
v3.1 — Cloud Pro and Archon now ship every promised feature.
NEW
• Per-endpoint push notifications (Pro / Archon) — get a dedicated alert the moment an individual endpoint goes down, in addition to the rolling aggregate count. Snooze, recheck, and Open jump straight into that endpoint's history view.
• Weekly SLO digest (Pro / Archon) — Sunday morning push with the past week's uptime % and the endpoints that had the most trouble.
• Multi-device sync — server-enforced per tier (Free 1 / Pro 3 / Archon 5). Reinstalling on the same phone no longer counts as a new device. You get a clear "limit reached" prompt with an upgrade path on Free and Pro.
• SSL expiry tracking (Archon) — see the days remaining on every HTTPS endpoint's TLS certificate. The check runs on your device when you open an endpoint, so open it weekly (or tap Check now) to keep the date fresh. Continuous server-side SSL monitoring is in the works for a future update.
CHANGED
• Multi-region checks have been removed from the Archon feature list while we ship the proper multi-pop infrastructure. Archon pricing is unchanged — the 30-endpoint cap, 90-day history, SSL expiry tracking, Family Sharing, and 5-device sync remain the value prop.
If you're new to PingOps:
CORE
• On-device monitoring — local mode is free, no account, never phones home.
• Cloud monitoring — Sign in with Apple, flip an endpoint to Cloud mode, and a Cloudflare-backed proxy checks it every minute, every day. Push alerts when something breaks.
• Validates status codes, response keywords, and JSON fields — not just "did the socket open."
• Live Activity for active incidents — recheck or snooze without unlocking.
PLANS
• Free — 2 cloud endpoints, 5-min interval, 24h history.
• Pro — 10 cloud endpoints, 1-min interval, 30-day history, per-endpoint pushes, weekly SLO digest, 3-device sync. From $3.99/mo or $34.99/yr.
• Archon — 30 cloud endpoints, 90-day history, SSL expiry tracking, Family Sharing, 5-device sync, plus everything in Pro. From $9.99/mo or $84.99/yr.
PRIVACY
• Cloud monitoring is opt-in per endpoint. Local endpoints never leave your device.
• Request bodies and custom headers are encrypted per-user.
• Aggregate alerts contain only a count — never endpoint names or URLs.
Use of PingOps and any in-app subscription is governed by Apple's Standard EULA: https://www.apple.com/legal/internet-services/itunes/dev/stdeula/
3.1.0 May 21
v2.0 — major design + reliability update.
• Faster status picker and Test on Edit in the endpoint form
• Cleaner detail layout — pills replace duplicated quick-action row
• Refined preview row trailing layout and heatmap allocation
• Unified snooze banner copy
• Dual-task background scheduling (refresh + processing) with diagnostics
• Crash fix when moving subfolders between folders
• Improved light theme color contrast for WCAG AA
• No more residual "cancelled" toasts on pull-to-refresh
Privacy-first as always — all data stays on your device.
2.0.0 May 10
v3.10 — A reliability release. Two independent reviews of the app and the cloud backend found 66 improvements; all of them are in this update.
ALERTS AND LOCK SCREEN
• Fixed: per-endpoint alerts and lock-screen card updates sent by PingOps Cloud could fail to reach your iPhone. They now arrive.
• A card you dismiss stays away until that outage is over. A snoozed card comes back once, when the snooze ends.
• The summary card for three or more incidents now clears itself when they recover, even with the app closed.
• Snooze and Re-check on a notification now work for cloud endpoints.
• Signing in to PingOps Cloud no longer needs an app restart before lock-screen cards can start.
• PingOps Cloud notifications arrive in the app's language.
SUBSCRIPTIONS
• Updates from Apple are applied in order, so a delayed message can no longer downgrade a renewed plan, and billing grace periods are always honoured.
INCIDENTS AND TRENDS
• Faster with long histories. Incidents now shows how far back the history on your iPhone goes.
FIXES
• The discount label on the German and Spanish subscription screen showed a garbled number.
• Endpoint details no longer flash "No checks yet" while loading.
more Version 3.10.0 Oct 1
Data Linked to You The following data may be collected and linked to your identity:
Contact Info User Content Identifiers