Skip to content

BugSnag watches app stability. Squasher follows the request.

BugSnag is built around crash reporting and stability scores, with deep mobile coverage. Squasher is built around one failing request: its error, logs, trace, and replay.

Free plan. No credit card required.

BugSnag and Squasher, signal by signal, from public pages checked 2026-09-24.
SignalBugSnagSquasher
ErrorsIncluded: 50+ platformsIncluded: Web and backend
Mobile SDKsIncluded: iOS, Android, morePartly: Via Sentry SDKs
Stability scoresCosts extra: Preferred and upNot offered or not listed: Not offered
TracesCosts extra: Span packsIncluded: OTLP traces
LogsNot offered or not listed: Not listedIncluded: SDKs, OTLP, drains
Session replayNot offered or not listed: Not listedIncluded: Browser SDK
IncludedCosts extraPartlyNot offered or not listedChecked 2026-09-24.

Mobile stability, or full-stack context?

BugSnag answers “is this release healthy?” Squasher answers “why did this request fail?”

BugSnag

Pick BugSnag when

  • You ship native iOS, Android, React Native, or Flutter apps.
  • You need dSYM and ProGuard symbolication for crash reports.
  • You manage releases by stability scores, targets, and adoption.
  • You need an on-premises deployment or a feature flag dashboard (Enterprise).

Squasher

Pick Squasher when

  • Most failures start in web apps, APIs, or workers, not phones.
  • You want server logs and OpenTelemetry traces next to each error.
  • You want session replay and uptime monitors without another vendor.
  • You want AI triage on new production issues, on every plan.

BugSnag and Squasher, feature by feature.

BugSnag goes deeper on apps and releases. Squasher goes wider on signals.

Platforms

BugSnag
50+: mobile, web, desktop, server
Squasher
Browser, Next.js, Node.js, Workers, Rust

Mobile symbol files (dSYM, ProGuard)

BugSnag
Yes
Squasher
No

Stability scores and targets

BugSnag
Preferred and Enterprise
Squasher
No

Regression alerts

BugSnag
Yes
Squasher
No

Error spike alerts

BugSnag
Yes
Squasher
Query monitors: threshold or spike

Performance

BugSnag
Span packs: app start, screen loads, Web Vitals
Squasher
OTLP traces linked to errors

OpenTelemetry

BugSnag
Traces, via OTel JSON protocol
Squasher
Logs, traces, and metrics over OTLP

Logs

BugSnag
Not listed
Squasher
SDK logs, OTLP, and platform log drains

Session replay

BugSnag
Not listed
Squasher
Browser SDK, linked to errors by session

Uptime and status pages

BugSnag
Not listed
Squasher
Monitors, heartbeats, and status pages

AI

BugSnag
MCP server with AI fix suggestions in your IDE
Squasher
AI triage on every plan

Feature flag dashboard

BugSnag
Enterprise
Squasher
No

On-premises option

BugSnag
Enterprise
Squasher
No

BugSnag facts checked 2026-09-24 on BugSnag’s own pages: BugSnag pricing, BugSnag product, BugSnag OpenTelemetry docs. Squasher facts come from our docs and pricing.

The whole request, not only the crash.

Errors, logs, and spans from the same request share a trace ID, so you can follow one failure across all three.

  • Send logs and traces from any OpenTelemetry SDK or collector.
  • Add platform logs from Vercel, Railway, Render, or Cloudflare with a drain.
  • A span that ends with an error status is recorded as an error.
OpenTelemetry in Squasher
  1. 14:06:09infoPOST /api/checkout 200 188ms
  2. 14:06:11infocart.load cart=8f21 items=3
  3. 14:06:12warnpricing: price pending at render
  4. 14:06:12errorTypeError: reading 'amount' of undefined
  5. 14:06:14infoPOST /api/checkout 500 2.31s
  6. 14:06:15warnretry pricing.load attempt=2
  7. 14:06:16infoGET /api/cart 200 84ms
  8. 14:06:18errorTypeError: reading 'amount' of undefined
  9. 14:06:09infoPOST /api/checkout 200 188ms
  10. 14:06:11infocart.load cart=8f21 items=3
  11. 14:06:12warnpricing: price pending at render
  12. 14:06:12errorTypeError: reading 'amount' of undefined
  13. 14:06:14infoPOST /api/checkout 500 2.31s
  14. 14:06:15warnretry pricing.load attempt=2
  15. 14:06:16infoGET /api/cart 200 84ms
  16. 14:06:18errorTypeError: reading 'amount' of undefined
  1. POST /api/checkout
  2. cart.load
  3. pricing.load
  4. db.query prices
  5. render.total
  6. 0 msrender.total threw2.31 s

Example logs and trace.

See what the user did.

The browser SDK records session replay by default, under the same session ID as the user's errors.

  • Password inputs are masked by default. Mask all text or block selectors.
  • Set a sample rate to control how many sessions you keep.
  • The replay view marks errors and lists the logs and traces from that session.
Session replay
shop.example.com/checkout
Total
Pay
Something went wrong

error at 1:031:40

  1. 14:06:09infoPOST /api/checkout 200 188ms
  2. 14:06:11infocart.load cart=8f21 items=3
  3. 14:06:12warnpricing: price pending at render
  4. 14:06:12errorTypeError: reading 'amount' of undefined
  5. 14:06:14infoPOST /api/checkout 500 2.31s
  6. 14:06:15warnretry pricing.load attempt=2
  7. 14:06:16infoGET /api/cart 200 84ms
  8. 14:06:18errorTypeError: reading 'amount' of undefined
  9. 14:06:09infoPOST /api/checkout 200 188ms
  10. 14:06:11infocart.load cart=8f21 items=3
  11. 14:06:12warnpricing: price pending at render
  12. 14:06:12errorTypeError: reading 'amount' of undefined
  13. 14:06:14infoPOST /api/checkout 500 2.31s
  14. 14:06:15warnretry pricing.load attempt=2
  15. 14:06:16infoGET /api/cart 200 84ms
  16. 14:06:18errorTypeError: reading 'amount' of undefined

Example replay and logs.

Events and spans, or one plan.

BugSnag sells error events and performance spans as separate packs. Squasher's paid plans start at $29 and include errors, telemetry, replays, and checks.

BugSnag

List prices from their pricing page

Free
$0
1 user, 7.5K events and 1M spans a month, 7-day retention
Select
From $23/month
50K events a month, unlimited users, 60-day retention. $20/month billed yearly
Preferred
From $39/month
100K events, stability scores and targets, SAML SSO. $33/month billed yearly
Enterprise
Custom
Custom retention, on-premises option, feature flag dashboard, named CSM

Squasher

Monthly plans. No per-seat price.

Free
$0/month
10 GB of errors, logs, traces, and metrics, 5K replays, 30-day error history
Pro
$29/month
100 GB of errors, logs, traces, and metrics, 10K replays, 90-day error history
Team
$99/month
250 GB of errors, logs, traces, and metrics, 40K replays, 90-day error history
Scale
$299/month
1 TB of errors, logs, traces, and metrics, 150K replays, 90-day error history

How to compare

  • BugSnag event and span tiers are chosen separately; the prices above are the lowest tier.
  • A BugSnag event is an unhandled exception or a handled one you choose to report.
  • Squasher counts telemetry GB, which includes error events, and replay sessions against each plan.

BugSnag facts checked 2026-09-24 on BugSnag’s own pages: BugSnag pricing, BugSnag product, BugSnag OpenTelemetry docs. Squasher facts come from our docs and pricing.

Start with a web or backend service.

Leave your mobile apps on BugSnag. Move one service where errors need their logs and traces.

  1. Install the SDK

    Next.js shown. The Node.js, browser, Cloudflare Workers, and Rust SDKs work the same way.

    bun add @squasher-ai/nextjs
    Next.js guide
  2. Point OpenTelemetry at Squasher

    Your existing exporters send logs, traces, and metrics to the same project.

    OTEL_EXPORTER_OTLP_ENDPOINT="https://ingest.squasher.ai"OTEL_EXPORTER_OTLP_HEADERS="x-squasher-key=$SQUASHER_API_KEY"
  3. Add an uptime monitor

    Watch the service's health endpoint. A failed check opens an incident and notifies your routes.

    Status monitoring
  4. Move that service's alerts

    Rebuild its alert routes in Squasher. Keep BugSnag alerts for the apps you left on it.

    Notification routing
Paste into your coding agent
Install Squasher for this project. If Squasher skills or MCP are not configured in this agent environment, run `bash <(curl -fsSL https://squasher.ai/install.sh) --agents -y`. Then read https://skills.squasher.ai/squasher-onboard/SKILL.md, map every runnable app/service/worker/frontend/agent in the repo, choose the matching Squasher SDK, log drain, OTLP, or Agent SDK path, initialize with SQUASHER_API_KEY and SQUASHER_PROJECT_ID from environment variables, send one real verification event, and report the files changed plus the verification step. Do not hardcode or reveal real API keys.
bash <(curl -fsSL https://squasher.ai/install.sh) --agents -y

Questions, answered.

Is Squasher a BugSnag alternative?

For web and backend services, yes: errors, logs, traces, replay, uptime checks, and AI triage in one project. For native mobile apps, BugSnag is the stronger tool today, with its own iOS, Android, React Native, and Flutter SDKs and stability scores.

Does Squasher support mobile apps?

Squasher has no native mobile SDK. Mobile apps can send error events through Sentry's iOS, Android, and React Native SDKs, which Squasher accepts. There is no dSYM or ProGuard processing and no stability score.

How does OpenTelemetry support compare?

BugSnag Performance accepts traces through an API that follows the OpenTelemetry traces JSON protocol, and spans are its billing unit. Squasher accepts OTLP/HTTP logs, traces, and metrics, and records a span that ends with an error status as an error.

What do the free plans include?

BugSnag's free plan has 7,500 events and 1M spans a month for 1 user, with 7 days of data. Squasher's free plan includes 10 GB of telemetry a month for errors, logs, traces, and metrics, plus replays and uptime checks. Checked 2026-09-24.

Can we keep BugSnag for mobile and use Squasher for the web?

Yes. That is the cleanest split: BugSnag keeps crash reporting and stability scores for the apps, and Squasher takes web and backend errors with their logs and traces.

Does Squasher have stability scores or release adoption?

No. Every Squasher event carries the release and environment you set, and alerts name a deploy from the hour before, but there is no stability score, target, or adoption chart.

Try it on one service.

Keep BugSnag on your apps and see one backend error arrive with its logs and trace.

Free plan. No credit card required.