FourSight
    LoginSign up
    Platform-Specific Monitoring

    Monitoring Supabase-Backed Applications

    Keep tabs on Postgres health, Auth endpoints, Edge Functions, and Realtime channels in one dashboard.

    11 min readGuide

    Why Supabase Apps Need External Monitoring

    Supabase provides excellent infrastructure and a public status page — but relying solely on their status means you'll learn about issues after your users do. External monitoring gives you independent verification that your specific Supabase project is healthy from your users' perspective. Supabase's status page tracks the platform globally; FourSight tracks your application end-to-end, including the configuration, RLS policies, edge functions, and integrations that Supabase has no visibility into.

    The Four Critical Supabase Surfaces

    A typical Supabase-backed application has four distinct surfaces that can fail independently. Monitor each one with a dedicated check rather than relying on a single 'is the app up' monitor.

    REST API (PostgREST)

    Monitor your most-queried tables via the REST API. A simple GET request to your primary data endpoint verifies PostgREST, the Postgres database, and your RLS policies all in one check. Use anon-key auth so the check exercises the same authorization path your users hit.

    Auth Endpoints

    Your signup and login flows depend on Supabase Auth. Monitor /auth/v1/health for basic availability, and add keyword checks that hit the signup or magic-link endpoints to verify the full flow works.

    Edge Functions

    Supabase Edge Functions can fail independently of the rest of the platform — function-specific deploy issues, secret rotation gaps, or cold-start regressions. Monitor each production function's URL with an HTTP check, and add response-time alerts to catch cold-start degradation.

    Realtime Channels

    If your app uses Supabase Realtime for live updates, monitor the WebSocket endpoint to catch connection issues early. Realtime outages are silent — the page loads fine, but the live data never appears.

    Setting Up the Right Checks

    Use the right monitor type for each surface. A generic HTTP 200 check misses too much in a Supabase architecture.

    Surface Monitor Type Recommended Interval Alert Threshold
    PostgREST API HTTP keyword 30s (Growth+) / 60s (Starter) 2 consecutive failures
    Auth health HTTP 60s 3 consecutive failures
    Edge function HTTP keyword 60s 2 consecutive failures
    Realtime WebSocket HTTP (handshake) 5 min 2 consecutive failures
    SSL certificate SSL Daily 30 days before expiry
    Database health endpoint HTTP keyword 60s 2 consecutive failures

    Database Performance Monitoring

    Postgres query performance degrades gradually, then suddenly. Most teams discover slowdowns from a Slack message about the dashboard 'feeling slow' — by then, the regression has been live for hours or days. Monitor API endpoints that exercise your heaviest queries and set response-time thresholds that alert when queries slow beyond acceptable limits.

    💡 If your P95 latency drifts by more than 50% over a 7-day window, treat it as an early warning. Either query patterns have changed, indexes have degraded, or data volume has crossed a threshold.
    Recommended response time thresholds:
    
    Simple read queries (single table):     < 200ms   alert at 500ms
    Complex joins (3+ tables):              < 500ms   alert at 1500ms
    Full-text search:                       < 300ms   alert at 1000ms
    Write operations (single row):          < 100ms   alert at 500ms
    Bulk writes / aggregations:             < 1000ms  alert at 3000ms
    Edge function cold-start:               < 500ms   alert at 2000ms
    Edge function warm:                     < 100ms   alert at 500ms

    Monitoring a Commercial SaaS?

    FourSight includes 25 commercial-safe monitors with multi-region validation.

    Start Monitoring Free

    Connection Pool Exhaustion

    Supabase uses connection pooling via PgBouncer. When your pool is exhausted, new connections fail with cryptic errors and your app effectively goes down. Free-tier projects don't have pooling at all and are limited to direct connections. Monitor a lightweight database health endpoint (one that runs SELECT 1 against the connection pool) and alert immediately when it starts timing out.

    RLS Policy Drift

    Row Level Security policies are the foundation of multi-tenant Supabase apps — and they break silently. A subtle policy change can either leak data across tenants (worse) or block legitimate users (bad but visible). Add monitoring checks that authenticate as a known test user and verify they can read their own records AND cannot read records belonging to other tenants. Run these checks every 5 minutes; they catch the entire class of RLS regressions before they hit production users.

    Multi-Region Verification

    Supabase projects are hosted in a single AWS region. Use FourSight's multi-region monitoring to verify that users worldwide can reach your Supabase endpoints with acceptable latency. APAC users hitting a US-East Supabase project typically see 200-300ms baseline latency just from network round-trips — that's before any query work.

    Edge Function-Specific Pitfalls

    Edge Functions have unique failure modes. Cold starts can spike to 1-2 seconds even for trivial functions. Secret rotation without redeploying causes 500s. Deno runtime updates occasionally break previously-working code. Build a synthetic check per function that exercises the real code path and alerts on both availability and response-time drift.

    Frequently Asked Questions

    Protect Your SaaS Revenue

    Start monitoring in under 60 seconds.