# Amazon SNS vs Firebase Cloud Messaging > Amazon SNS scores 72.8 (BB) on agent readiness against Firebase Cloud Messaging's 69.8 (B), and leads in 3 of 7 scored categories. Firebase Cloud Messaging leads on agent ergonomics, payments & pricing and maintenance & community. Both do notify push. Category scores, facts… - Canonical: https://www.anchorterminal.com/compare/amazon-sns-vs-firebase-cloud-messaging - Markdown: https://www.anchorterminal.com/compare/amazon-sns-vs-firebase-cloud-messaging.md (~2,500 tokens) - Slim: https://www.anchorterminal.com/compare/amazon-sns-vs-firebase-cloud-messaging.min.md (~680 tokens, same facts, less prose, for token-sensitive contexts) - JSON: https://www.anchorterminal.com/compare/amazon-sns-vs-firebase-cloud-messaging.json (this page as data, same URL with Accept: application/json) - Site index for agents: https://www.anchorterminal.com/llms.txt (full text: https://www.anchorterminal.com/llms-full.txt) - API: https://www.anchorterminal.com/api/v1/index.json - Updated: 2026-10-09 Amazon SNS scores 72.8 (BB) on agent readiness against Firebase Cloud Messaging's 69.8 (B), and leads in 3 of 7 scored categories. Firebase Cloud Messaging leads on agent ergonomics, payments & pricing and maintenance & community. Both do notify push. - Amazon SNS: grade BB, 72.8/100, rank #96 of 842. Markdown https://www.anchorterminal.com/tools/amazon-sns.md · JSON https://www.anchorterminal.com/api/v1/tools/amazon-sns.json - Firebase Cloud Messaging: grade B, 69.8/100, rank #162 of 842. Markdown https://www.anchorterminal.com/tools/firebase-cloud-messaging.md · JSON https://www.anchorterminal.com/api/v1/tools/firebase-cloud-messaging.json ## Which one, for what ### Amazon SNS (BB) Good for: Teams already on AWS that want cheap push, SMS and plain-text email alerts or fan-out to queues and functions under IAM and CloudTrail. Ahead on: - Reliability, 75 against 66 - Security & auth, 89 against 68 Also in its favour: - Agent-ready, a grade of BB or better Watch for: No idempotency token on `Publish` to a standard topic. Only FIFO topics deduplicate, over a five-minute window ### Firebase Cloud Messaging (B) Good for: The push transport under an app that already holds device registrations, at no charge. Ahead on: - Agent ergonomics, 70 against 65 - Payments & pricing, 40 against 35 - Maintenance & community, 83 against 75 Watch for: Push transport only. No in-app feed, email, SMS, user preferences, digests or templates ## Score by category | Category | Weight | Amazon SNS | Firebase Cloud Messaging | Edge | | --- | --- | --- | --- | --- | | Reliability | 16% (20 this run) | 75 | 66 | Amazon SNS +9 | | Performance | 10%, pending | pending | pending | not scored in this run | | Schema & documentation | 13% (16.2 this run) | 83 | 86 | Firebase Cloud Messaging +3 | | Agent ergonomics | 13% (16.2 this run) | 65 | 70 | Firebase Cloud Messaging +5 | | Security & auth | 14% (17.5 this run) | 89 | 68 | Amazon SNS +21 | | Payments & pricing | 10% (12.5 this run) | 35 | 40 | Firebase Cloud Messaging +5 | | Task success | 10%, pending | pending | pending | not scored in this run | | Maintenance & community | 7% (8.8 this run) | 75 | 83 | Firebase Cloud Messaging +8 | | Transparency & trust | 7% (8.8 this run) | 83 | 81 | Amazon SNS +2 | | Negative events | ≤15 | 0 | 0 | | | **Total** | | **72.8 · BB** | **69.8 · B** | | ## Facts side by side | Fact | Amazon SNS | Firebase Cloud Messaging | | --- | --- | --- | | Kind | HTTP API | HTTP API | | Vendor | Amazon Web Services | Google | | Hosted endpoint | `https://sns.us-east-1.amazonaws.com` | `https://fcm.googleapis.com` | | Transports | HTTP | HTTP | | Auth | OAuth or key | OAuth | | Pricing | Pay per use | Free | | Price for notify push | $0. per message | free | | x402 | no | no | | Licence | Proprietary service under the AWS Customer Agreement. The AWS SDKs and the AWS Labs MCP server are Apache-2.0 | Proprietary service under the Google APIs Terms of Service. The Firebase Admin SDKs are Apache-2.0 | | Read-only variant documented | no | no | | llms.txt | yes | yes | | Last release | 2026-10-06 | 2026-09-24 | | Terms last updated | 2026-08-14 | 2021-11-09 | | Privacy policy last updated | 2026-05-18 | 2026-10-01 | | Customer content may train models | not found in the text | yes | | Terms restrict automated access | not found in the text | yes | | Terms restrict benchmarking | not found in the text | not found in the text | | Terms or service can change without notice | not found in the text | not found in the text | | Arbitration or class-action waiver | yes | not found in the text | | Popularity | 6.5M npm/wk | 11.5M npm/wk, 3.8M PyPI/wk | ## Verdicts **Amazon SNS.** IAM and topic policies limit a credential to single actions and topics, a read-only managed policy exists, and CloudTrail can log each publish. Standard topics take no idempotency token, so a retried `Publish` can send twice. SNS has no user preferences, digests or in-app channel, email is plain text to confirmed subscribers, and SMS starts in a sandbox. **Firebase Cloud Messaging.** Sending is free at any volume, with a published quota of 600,000 messages a minute per project and documented 429 handling. FCM is push transport only. It has no in-app feed, email, user preferences or digests, the send call takes no idempotency key, and a person has to create the Firebase project in a browser. ## Before you call either ### Amazon SNS 1. Sign requests with SigV4 for service `sns` at `sns..amazonaws.com`, or call `aws sns publish --topic-arn --message ` from the AWS CLI 2. Track `MessageId` yourself on standard topics, because a retried `Publish` sends again. Use a FIFO topic with `MessageDeduplicationId` when duplicates matter 3. Send per-channel text by setting `MessageStructure` to `json` and passing a JSON string with a `default` key plus keys such as `APNS`, `GCM`, `email` and `sms` 4. Check `GetSMSSandboxAccountStatus` and the monthly spend quota before texting. Sandbox sends reach only verified numbers 5. Expect an email subscription to stay in `PendingConfirmation` until the recipient clicks the link, and keep each email subscription under 10 messages a second ### Firebase Cloud Messaging 1. Mint an access token from a service account with the scope `https://www.googleapis.com/auth/firebase.messaging`, then POST to `https://fcm.googleapis.com/v1/projects//messages:send` 2. Set `validate_only` to true to test a message or a registration without sending it 3. On 429 wait for the `retry-after` header, or 60 seconds if it is absent. Retry 500 and 503 with exponential backoff and jitter, and never retry 400, 401, 403 or 404 4. Drop a registration when the error is `UNREGISTERED` (404). Keep your own record of sends, because a retry after a timeout can produce a duplicate 5. Target `fid` in new code. The `token` field is marked deprecated in the API, and device groups stop working after 29 September 2027 ## Questions ### Which is better for AI agents, Amazon SNS or Firebase Cloud Messaging? Amazon SNS scores 72.8 (BB) on agent readiness against Firebase Cloud Messaging's 69.8 (B), and leads in 3 of 7 scored categories. Firebase Cloud Messaging leads on agent ergonomics, payments & pricing and maintenance & community. ### Which is cheaper for notify push, Amazon SNS or Firebase Cloud Messaging? Firebase Cloud Messaging, at free against $0. per message for Amazon SNS. These are the vendors' published prices for the job. ### Do Amazon SNS and Firebase Cloud Messaging need an API key? Amazon SNS takes an API key or an OAuth sign-in. Firebase Cloud Messaging uses an OAuth sign-in. ### Can an agent call Amazon SNS and Firebase Cloud Messaging without installing anything? Yes. Amazon SNS has a hosted endpoint at https://sns.us-east-1.amazonaws.com and Firebase Cloud Messaging at https://fcm.googleapis.com. ## For agents - This comparison as JSON: https://www.anchorterminal.com/compare/amazon-sns-vs-firebase-cloud-messaging.json, and with the fewest tokens: https://www.anchorterminal.com/compare/amazon-sns-vs-firebase-cloud-messaging.min.md - Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "amazon-sns", "b": "firebase-cloud-messaging"}`. From a terminal: `anchor compare amazon-sns firebase-cloud-messaging` - Each listing in full: https://www.anchorterminal.com/api/v1/tools/amazon-sns.json and https://www.anchorterminal.com/api/v1/tools/firebase-cloud-messaging.json ## Other comparisons with Amazon SNS or Firebase Cloud Messaging - [Amazon SNS vs Courier](https://www.anchorterminal.com/compare/amazon-sns-vs-courier.md) - [Amazon SNS vs Knock](https://www.anchorterminal.com/compare/amazon-sns-vs-knock.md) - [Amazon SNS vs MagicBell](https://www.anchorterminal.com/compare/amazon-sns-vs-magicbell.md) - [Amazon SNS vs Novu](https://www.anchorterminal.com/compare/amazon-sns-vs-novu.md) - [Amazon SNS vs ntfy](https://www.anchorterminal.com/compare/amazon-sns-vs-ntfy.md) - [Amazon SNS vs OneSignal](https://www.anchorterminal.com/compare/amazon-sns-vs-onesignal.md) - [Amazon SNS vs Pushover](https://www.anchorterminal.com/compare/amazon-sns-vs-pushover.md) - [Amazon SNS vs SuprSend](https://www.anchorterminal.com/compare/amazon-sns-vs-suprsend.md) - [Courier vs Firebase Cloud Messaging](https://www.anchorterminal.com/compare/courier-vs-firebase-cloud-messaging.md) - [Firebase Cloud Messaging vs Knock](https://www.anchorterminal.com/compare/firebase-cloud-messaging-vs-knock.md) - [Firebase Cloud Messaging vs MagicBell](https://www.anchorterminal.com/compare/firebase-cloud-messaging-vs-magicbell.md) - [Firebase Cloud Messaging vs Novu](https://www.anchorterminal.com/compare/firebase-cloud-messaging-vs-novu.md) - [Firebase Cloud Messaging vs ntfy](https://www.anchorterminal.com/compare/firebase-cloud-messaging-vs-ntfy.md) - [Firebase Cloud Messaging vs OneSignal](https://www.anchorterminal.com/compare/firebase-cloud-messaging-vs-onesignal.md) - [Firebase Cloud Messaging vs Pushover](https://www.anchorterminal.com/compare/firebase-cloud-messaging-vs-pushover.md) - [Firebase Cloud Messaging vs SuprSend](https://www.anchorterminal.com/compare/firebase-cloud-messaging-vs-suprsend.md)