WhatsApp Flow Health, Quality & Monitoring

WhatsApp continuously monitors the operational quality of dynamic Flows that exchange data with business endpoints. If endpoint latency spikes, availability drops, or errors surge, Meta's automated quality system will Throttle or Block your Flow.

This guide details the quality thresholds, Flow degradation states, publishing pre-flight checklist, and automated recovery procedures in SMSPort.


1. Meta Quality System & Monitored Metrics

Meta evaluates dynamic Flows against three primary operational metrics:

Metric Monitored Behavior Safe Operating Threshold Warning Threshold
Endpoint Latency Time taken by your server to process and return encrypted responses < 1,000 ms (1 second) Spikes > 5,000 ms (Hard timeout at 10,000 ms)
Endpoint Availability Uptime and reliability of the HTTPS endpoint URL 99.9% Uptime Failure to respond to ping health checks
Error Rate Proportion of requests returning HTTP 5xx or unparseable encryption payloads < 0.5% Error rate exceeding 5% of active sessions

2. Flow State Degradation & Impact

When an endpoint degrades, Meta transitions the Flow through a graduated restriction model:

Flow State Operational Restrictions Consumer Experience Business Impact
PUBLISHED No restrictions. Full interactive Flow experience. Normal operation.
THROTTLED Maximum 10 new Flow messages per hour. Existing customers can open and complete previously received Flow messages. New broadcast or chatbot sends are heavily capped.
BLOCKED All sending and opening is halted. Customers attempting to tap the Flow CTA button see an error dialog. Flow is completely disabled across all templates and chats.

The Degradation & Recovery Lifecycle:

  • Degradation: PUBLISHED ➔ THROTTLED ➔ BLOCKED (Triggered as failure rates persist).
  • Recovery: BLOCKED ➔ THROTTLED ➔ PUBLISHED (Meta automatically restores status once endpoint metrics normalize).

3. How to Recover a Throttled or Blocked Flow

If your Flow enters a Throttled or Blocked state:

  1. Check Webhook Alerts:
    • Inspect SMSPort's Flow Event log for alert webhooks received from Meta (endpoint-latency-alert, endpoint-availability-alert, endpoint-error-rate-alert).
  2. Resolve Latency Bottlenecks:
    • Target server response times under 1 second.
    • Decouple slow external CRM or database calls; offload background tasks after returning the screen payload.
    • Cache static lists (e.g., branches, doctor specialties) in Redis or server memory.
  3. Verify Availability & Health Ping:
    • Confirm your server responds to POST requests with payload {"action": "ping"} by returning:
      {
        "data": {
          "status": "active"
        }
      }
    • Must return HTTP 200 OK within 10 seconds.
  4. Automatic Detection:
    • Once your endpoint responds reliably to health check pings and user traffic, Meta's automated monitors will restore the Flow to THROTTLED and subsequently PUBLISHED.

4. Mandatory Pre-Publishing Checklist

Before clicking Publish in the SMSPort Ops Console, verify all 8 readiness gates:

Pre-Flight Gate Requirement How to Verify in SMSPort
Connected Phone Number Verified sender phone attached to the WABA. View sender dropdown under /whatsapp-flows.
Signed Public Key RSA-2048 public key registered with Meta. Check Flow Details > Encryption shows Registered.
Endpoint Configuration Valid HTTPS URL mapped to sender. Verify Endpoint ready status badge.
Meta App Connection Meta App linked with WhatsApp permissions. Checked automatically during WABA OAuth onboarding.
Flow JSON Validation 0 fatal errors, unique field names, valid terminal screen. Check SMSPort Flow Validation Badge displays green Valid.
Active Versioning Version 7.3 used (not deprecated). Flow root declares "version": "7.3".
Health Check Operational Endpoint responds cleanly to ping action. Test send card in Draft mode and complete all screens.
Webhook Subscription WABA subscribed to messages and flows events. Configured via SMSPort webhook listener.