Pushover Alternative? ntfy vs Pushover vs Nodd Compared

Published:2026-11-08

Pushover and ntfy are strong tools for sending notifications. They reach Android and desktop, and ntfy can be self-hosted. Nodd is iPhone only: you approve or reject a request from a script or AI agent with Face ID, and the answer goes back to the program that asked. Use Pushover or ntfy to notify, and Nodd when you need the answer.

Short answer

Pushover and ntfy are mature tools for notifying a person from a program, and they reach Android and desktop as well as iPhone. Nodd is an iPhone app for asking a person to decide: the Face ID approval or rejection goes back to the program that asked. Pick Pushover or ntfy to notify, and Nodd when the program needs the answer.

Notify or approve

When you compare notification services, start with the direction of the flow.

For approvals you need to know who answered and how, never treat silence as yes, and get the answer back to the sender reliably. Below is what each service's official docs say on these points, as of November 8, 2026.

Pushover

Pushover is a dedicated notification service with apps for iPhone and iPad, Android, and desktop. For individuals it is a one-time purchase per platform: the official pricing page lists $4.99 USD per platform with a 30-day free trial, and no subscription fees for individuals (checked November 8, 2026).

Priorities run from -2 to 2. Emergency priority (2) needs retry and expire, and repeats the notification until someone acknowledges it. The response has a receipt you can poll to learn whether and by whom it was acknowledged, or you can pass a callback URL.

curl -s https://api.pushover.net/1/messages.json \
  --form-string "token=$PUSHOVER_APP_TOKEN" \
  --form-string "user=$PUSHOVER_USER_KEY" \
  --form-string "message=Disk is at 95%" \
  --form-string "priority=2" \
  --form-string "retry=60" \
  --form-string "expire=3600"

# Poll the receipt (no more than once every 5 seconds)
curl -s "https://api.pushover.net/1/receipts/$RECEIPT.json?token=$PUSHOVER_APP_TOKEN"

Sent to a group, the first person to acknowledge stops the retries for everyone. That suits on-call paging, where it should keep ringing until somebody notices. What comes back is acknowledgment, though, not an approve or reject decision or a reason.

ntfy

ntfy is an open source notification service, dual licensed under Apache 2.0 and GPLv2. Use the public ntfy.sh server or run your own. There are Android, iOS, and web apps.

There is no sign-up: pick a topic name and publish. Priorities run from 1 to 5. As the ntfy docs say, on a server without sign-up the topic is essentially a password, so choose one that is hard to guess. Servers with access control take an access token in Authorization: Bearer.

A notification can have up to three action buttons. view opens a URL, and http sends an HTTP request (POST by default) to a URL when tapped. broadcast is Android only.

curl -H "Title: API is not responding" -H "Priority: high" \
  -H "Actions: http, Restart, https://ops.example.com/restart, method=POST" \
  -d "api-1 failed its health check 3 times" ntfy.sh/your-hard-to-guess-topic

With an http button you can make a tap trigger something. You run the receiving endpoint yourself, though, and you also build the way to check who tapped and the way to get the result back to the original script.

Self-hosting keeps messages under your control. By default the server keeps messages in memory for 12 hours. For instant delivery to iOS, the ntfy docs have you set upstream-base-url to forward through ntfy.sh. Only the message ID goes upstream, and the device fetches the message from your server. Without it, delivery can take hours.

Nodd

Nodd is an iPhone app that receives notifications and questions from scripts, CI, and AI agents. An approval request has Approve and Reject buttons answered with Face ID. The answer returns to the sender by reading the message state, through signed callbacks, or from the events API, and nodd ask turns it into an exit code. A rejection can carry a reason, which also goes back to the sender.

Bodies are encrypted to each recipient device's public key and deleted once the device receives them. The server handles the body before it is encrypted, and metadata, responses, and rejection reasons are not encrypted to devices. It is not end-to-end encrypted.

Team plans add approvals that need more than one person (up to 3) and escalation to other people when nobody responds. There are also inbound URLs for Grafana, Alertmanager, Datadog, Sentry, PagerDuty, and more, a GitHub Action, MCP, and a Claude Code hook.

Comparison table

PushoverntfyNodd
Main usenotifications, and emergency pages that repeat until acknowledgednotifications, self-hostableapproval and choice requests, plus notifications, alerts, and heartbeats
DevicesiPhone and iPad, Android, desktopAndroid, iOS, webiPhone only (iOS 17.0 or later)
What comes back to the senderwith emergency priority, whether and by whom it was acknowledged (receipt, callback)nothing; an http button can call your URLapprove, reject, or the chosen option, a reason, who answered, and whether Face ID was used
Identity check when answeringnot documentednot documentedapprovals need Face ID
Self-hostingnoyes (open source)no
Message bodieshandled by the servicethe server default keeps messages 12 hours; under your control if self-hostedencrypted per device and deleted on receipt; the server handles the body before encryption
Teamssend to a group; the first acknowledgment stops retriessubscribe to the same topicmultiple approvers and escalation on Team
Pricing modelone-time purchase per platform for individualspublic server or your ownFree plan, Team 5, and Team 10; prices are shown on the App Store purchase screen

"Not documented" means we could not confirm it in the official API docs. Nodd is not available in the EU at this time.

Which one to pick

Pushover is the better fit when

ntfy is the better fit when

Nodd is the better fit when

For notifications alone, there is little reason to switch to Nodd. If Pushover or ntfy already works for you, you can add Nodd only where you need approvals.

Getting an approval back with Nodd

Sign in with Apple in the app, create a channel, and issue a send key. In the API, set kind to approval. An Idempotency-Key header makes a retry safe.

curl https://api.nodd.blipdrop.net/v1/messages \
  -H "Authorization: Bearer $NODD_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: restart-482" \
  -d '{
    "kind": "approval",
    "level": "high",
    "title": "Restart api-1?",
    "expires_in": 1800
  }'

Read the result with GET /v1/messages/{id} and continue only when response.option_id is approve. An expired request with no response is never approval. With the CLI:

nodd send "api-1 restarted" --level low
nodd ask "Restart api-1?" && ./restart.sh
nodd ask "Start the production DB migration?" --approvals 2 --escalate-after 600 && ./migrate.sh

nodd ask exits 0 on approval, 10 on rejection, 11 when it ends without a response, and 12 when it stops waiting. --approvals above 1 and --escalate-after need Team. See push notifications from a shell script, monitoring alerts on iPhone, the API and CLI docs, and use cases.

The Free plan is 1 member, 1 device, 1,000 messages a month, a 24-hour delivery window, and 3 open questions. Markdown and image display, and answering text or secret requests, need Nodd 1.1 or later.

FAQ

Is Nodd a Pushover alternative?
It is if you receive on iPhone only and want approvals or choices returned to your program. If you need Android or desktop, or only want notifications, Pushover is the better fit.
What is the difference between ntfy and Pushover?
ntfy is open source and can be self-hosted. Pushover is a hosted service you cannot run yourself, with an emergency priority that repeats until acknowledged and receipts and callbacks that report the acknowledgment.
Can I build approvals with ntfy action buttons?
An http button sends a request to your URL when tapped, so you can if you build the receiving server. You also have to decide how to verify who tapped and how to get the result back to the original script.
Does Nodd work on Android or in the EU?
No. Nodd is iPhone only and is not available in the EU at this time.

Nodd delivers questions from scripts, CI, and AI agents to your iPhone, and returns your Face ID approval to the program that asked. There is a free plan.

Related guides