deploy · tutorial · mobile

Sentry $49 vs Telegram Alerts $0 for Indies

Sentry bills per seat while a Telegram bot pings your phone in seconds for $0. Setup, code, and the tradeoff.

A woman operator using a Barclay telegraph stamping machine, 1908
A woman operator using a Barclay telegraph stamping machine, 1908 · Photo: John Robert Schmidt, public domain, via Wikimedia Commons

You find out from the customer, not the dashboard

The worst message in indie SaaS is not a stack trace. It is a customer email that says "checkout has been broken since yesterday."

You had monitoring. Maybe a Sentry trial. Maybe hosting logs.

But the trial lapsed, the quota filled, or the alert went to an inbox you check twice a day. The bug sat there while visitors bounced.

The real question: when payment webhooks fail at 2 a.m., what reaches your phone first?

For a solo founder, the answer decides whether you fix it in ten minutes or apologize on Monday.

What a monthly plan buys and what $0 misses

Sentry's Team plan was $26 a month billed yearly when checked on 18 October 2026 (sentry.io/pricing), plus overages. Prices move, so verify before you buy.

Need Sentry-style APM Telegram bot ping
Monthly cost A paid plan plus overages $0, the Bot API is free
Alert path Email, Slack or PagerDuty rules you must wire A phone buzz in seconds
Stack traces Full source maps, breadcrumbs, replay A one-line message plus context
Setup time An SDK, keys, quota tuning Two settings, ten minutes
Failure mode Silent when the quota fills mid-incident Silent when the VPS itself is dead

Three details decide it for indies.

The quota fills at the worst moment. An error flood eats the monthly event budget. Then the real outage arrives with no budget left. You pay for the flood and miss the fire.

Dashboards do not wake you. A red chart you check tomorrow is worth less than a phone vibration tonight. Checkout down for 12 hours costs more than a year of any plan.

You debug from logs anyway. Solo apps have one server and one database. Your logs plus one block of context answer most "what broke" questions.

None of this makes Sentry bad. Teams with real incident rotations should buy it. A solo founder with one VPS should feel the phone buzz first, and buy the dashboard later.

What to do

Make a bot. Get two secrets.

Message @BotFather on Telegram, run /newbot, copy the token. Message @userinfobot and copy your chat ID.

Add both to your production settings, or use a Discord webhook instead. Sync them with bp secret sync.

Alert only on money-or-data events.

A payment webhook that fails. A database that stops accepting writes. The kit already alerts from its payment webhook handlers.

Add your own at two more sites and stop: unhandled errors on paid routes, and database connection loss. Everything else stays in logs.

The alert is a plain request to the Telegram Bot API with the message and a block of context.

A 60-second breaker drops repeats, with its memory capped.

No SDK.

No key dashboard.

No event budget.

Test it from your phone before you need it.

Send a test alert from your server.

Your phone buzzes in seconds.

If it does not, the settings are wrong.

Learn that on a Tuesday afternoon.

Pair it with one free uptime ping from UptimeRobot or Better Stack's free tier, aimed at your site. The bot covers "app alive but payments failing". The pinger covers "box dead".

What each side covers

Incident A paid APM The $0 Telegram bot
A Stripe webhook fails at 2 a.m. A chart by morning, if quota remains A buzz in seconds with the order ID
An error flood Eats the event budget The breaker: one ping, the rest dropped
The VPS disk fills The agent dies with the box Dead too, so the uptime ping covers it
A slow query, nobody down A flame chart finds it Misses it, so read your logs weekly
The monthly bill Seat plus events $0 on top of the $5 VPS

The catch, said early. The bot tells you that it broke and which order. It never tells you which line as fast as a trace viewer.

Know this first

The bot says that it broke and which order. It never shows you the line as fast as a trace viewer.

A slow query with nobody down is something you will miss.

Why BoringPush is the way to do this

Know first. Debug second.

BoringPush alerts your phone when a payment webhook fails. Add a free uptime check for the rest.

Zero seats. Zero quota.

FAQ

How is a sentry vs telegram alerts setup different from just reading logs?

Logs wait for you. The bot comes to you.

Your server logs answer "what broke" once you know something broke — the Telegram ping tells you the minute checkout fails, with the order ID attached. Run both: bot for wake-ups, logs for diagnosis.

What events should trigger a Telegram alert?

Three and only three: payment webhook failures, unhandled 500s on paid routes, and database-connect loss. Alert on everything and you will mute the bot within a week.

BoringPush alerts from its payment webhook handlers and leaves the rest in logs. Add the other sites yourself.

Does the circuit breaker hide real repeat failures?

No — it delays the noise, not the signal. The same alert within 60 seconds sends once and drops the rest.

A new signature (different message or context keys) always sends. If checkout fails for 50 different orders, the keys differ per order only if you include them — so keep context keys stable per incident type.

What if Telegram itself is down or the VPS loses network?

Then the request fails, the error is logged locally, and delivery fails soft instead of crashing your route. For box-dead scenarios the bot cannot help by design.

That is what the external uptime pinger covers. Two watchers, two failure modes, no single blind spot.

Can I use Discord instead of Telegram?

Yes. Set a Discord webhook instead and the same alert posts to your channel with identical text. If both are set, Telegram goes first and Discord is the fallback.

Telegram wins for phone buzz (instant push, no server-mute habits). Discord wins if your co-founder lives there. Both cost $0.

When should I actually buy Sentry?

When you have a second engineer, or when "which line" questions cost you more than downtime does — usually past ~$5k MRR or real on-call rotations. Keep the bot even then: Sentry for diagnosis, Telegram for wake-ups.

BoringPush keeps both paths open so the upgrade is additive, not a rewrite.

Keep reading

+ all the boring stuff (analytics, auth, SQLite ↔ Supabase, full marketplace, webhooks)

The Agent-First Shipping Kit

Command from your phone.

Built so autonomous AI agents build what you want without breaking what's already paying you.

$199

Get BoringPush

One-time payment · Lifetime updates · Unlimited projects.

Keep reading