ntfy (pronounced notify) is a self-hosted, HTTP-based pub-sub notification service. You publish a message to a named topic with a simple PUT or POST request, and it arrives on phones and desktops through open-source Android, iOS, web, and command-line apps. It serves developers, homelab operators, and small teams who want scriptable push alerts without building or renting a push backend.[1][2]
Quick verdict
Developers, homelab operators, and small DevOps teams that live in scripts and webhooks benefit most from ntfy. A single HTTP PUT or POST to a topic delivers push alerts, files, and action buttons to open-source phone, web, and CLI apps, self-hosted as one Go binary or Docker container. The material constraint is scope: topic-based push to its own apps only, with no multi-channel orchestration, no documented SSO, and free-tier topics protected by obscurity alone. If that lightweight shape fits, choose ntfy self-hosted or on hosted Pro; if you need templated email, SMS, and digests behind one workflow, compare Novu instead.[1][2][3]
Key features
Publish with a plain HTTP PUT or POST Send a notification with curl or any HTTP client by PUTting or POSTing a body to ntfy.sh/mytopic, with JSON bodies, headers, priorities, tags, and emoji supported on the publish API.[1][2]
Topics created on the fly, reservable on paid tiers Publishing or subscribing to a new topic name creates it instantly with no registration step; on the hosted service, free-tier topics are effectively password-protected by obscurity, while paid Pro tiers let you reserve topic names.[1][2]
Open-source Android, iOS, web, and CLI apps Subscribe from the Android app (Google Play and F-Droid), the iOS app, the web app, or the command-line client, all backed by the public source repository rather than closed clients.[1][2]
File attachments to phone or desktop Attach images, video, and other files to a message so items like surveillance-camera snapshots land on your devices instantly, with larger attachment allowances on the paid hosted tiers.[1][2]
Priorities, action buttons, tags, and emoji Set per-message priority with distinct sounds and vibration patterns, add action buttons that react from the notification, and classify messages with tags and emoji.[1]
Single static Go binary or Docker self-host Run the server as one statically-linked Go binary with no runtime dependencies, or from the documented Docker image and distro packages, which keeps small-server and homelab operation simple.[1][2]
Accounts, auth, and access control The documented server supports user accounts, authentication, and access control with private topics, so a self-hosted instance is not limited to the open-topic model of the free hosted tier.[1][2]
Delayed and scheduled delivery Publish messages with delay and scheduling options through the same HTTP API, so reminders and deferred alerts need no separate job runner.[1][2]
Who will love it
Homelab and IoT operators pushing status updates: one curl line from any script or sensor posts motion alerts, download completions, or login warnings straight to a phone.[1][2]
Developers wiring CI and monitoring webhooks: build jobs and uptime checks POST to a topic instead of maintaining a push backend, with self-hosting keeping the path under operator control.[1][2]
Privacy-minded teams avoiding big-platform push dependency: the open-source server and clients plus F-Droid distribution fit operators who want to see and host the whole path.[1][2]
Who should avoid it
Teams needing orchestrated multi-channel messaging: ntfy delivers push to its own apps, not templated email, SMS, and in-app digests with workflow orchestration, so compare Novu for that scope.[1][2]
Organizations requiring evidenced SSO, audit, or compliance posture: no SSO or identity-provider support was documented in the inspected sources, so regulated buyers must verify before committing.[1]
Buyers wanting white-glove onboarding and guaranteed support: the path is self-serve docs plus community, with priority support tied to the paid hosted tiers rather than a dedicated success team.[1]
Alternatives and compatibility
Novu is the evidenced catalogue competitor: both cover backend-event alerts to user devices through a self-hostable service, but Novu spans one API across push and other channels with workflow orchestration, while ntfy stays a lightweight topic-based push path.[1][2]
If you want the simplest self-hosted push alerts over HTTP and can live inside topic-based delivery to ntfy's apps, choose ntfy, self-hosted free or on the hosted Pro tier around $10 per month.[1][2]
If nobody on the team is comfortable with HTTP requests, topics, and app installs, choose neither developer service and use the notification features already in your phone, automation, or managed platform.[1][2]
Questions worth asking
What is the best ntfy alternative for non-technical users?
Novu, the competitor in this catalogue relationship, is also developer infrastructure, so it is not the answer for non-technical users either. A non-technical person who just wants alerts should use the notification features already built into their phone, home-automation app, or managed service rather than running a self-hosted push service.[1][2]
Is ntfy really no-code?
How much does ntfy cost per month?
As checked October 12, 2026, the hosted ntfy.sh service has a free tier, with Pro shown at about $10 per month and Business at about $20 per month for higher message volumes, reserved topics, and larger attachments. Self-hosting the open-source server itself is free of license cost, but you carry your own server and operations.[1]
Can you self-host ntfy?
Sources and editorial review
Source research. Reviewed on October 12, 2026. Written by Sanjib Sah. AI assisted; reviewed by a human editor.
We have not run or tested this product.
- ntfy.sh homepage
official · Observed October 12, 2026
Official homepage: HTTP pub-sub positioning, PUT/POST example, apps, attachments, priorities, ntfy.sh pricing tiers, open-source statement, star count.
- ntfy documentation root
official · Observed October 11, 2026
Documentation root: self-hosting section, auth/access-control documentation, commercial support signposts.
- binwiederhier/ntfy on GitHub
official · Observed October 11, 2026
Canonical source repository: Go server, dual Apache-2.0/GPL-3.0 licensing, contributor and release activity.
- ntfy subscribe docs
official · Observed October 11, 2026
Subscribe documentation: official Android, iOS, web, and CLI clients and topic subscription flow.
- ntfy install docs
official · Observed October 11, 2026
Install documentation: Docker, static binary, Debian/Ubuntu and RPM repositories, Arch, NixOS, FreeBSD, Windows builds.
- ntfy publish docs
official · Observed October 11, 2026
Publish documentation: PUT/POST API, JSON bodies, headers, actions, attachments, delay and scheduling options.
Compared with these products
No explicit proprietary baseline is recorded.