Skip to main content
Private Beta — WhatsApp delivery is in private beta. Contact us for access to the Managed tier, or book a Branded onboarding if you want messages sent from your own number.

What you get

Push a chart image, a short AI-written read of what changed, and a deeper analysis as a threaded follow-up — straight to a WhatsApp number on your team’s schedule. Built on the official WhatsApp Business Cloud API (no third-party bots). Replies and emoji reactions on a delivered chart fire an AI follow-up back in the same conversation, so WhatsApp becomes a two-way channel for your data — not just a delivery pipe.

Two tiers: Managed vs Branded

WhatsApp delivery ships in two flavors. The sending technology is identical (Meta Cloud API, same chart + AI pipeline) — what differs is whose number it comes from and how much setup you do.
ManagedBranded
SenderChartcastr’s shared business numberYour company’s own WhatsApp Business number
Setup time~30 seconds — one click1–2 weeks — we drive Meta Business verification with you
What the recipient sees”Chartcastr” in the message headerYour brand, your verified business name
Meta Developer account?Not neededYes — we walk you through it
Group deliverySupported (once Meta GA’s group send)Supported (once Meta GA’s group send)
Best forSolo founders, small teams, internal alertsAgencies, customer-facing delivery, branded experiences
PricingBundled with any paid planstarting at $85/mo per account + per-message Meta fees
The simplest mental model:
  • Managed is the right default. Most teams just want charts on their phones — it doesn’t matter that the sender header says “Chartcastr”. You’d never set up Twilio or Meta Business Manager just to text yourself.
  • Branded is for when your customer gets the message. Agencies sending client KPIs, SaaS sending account dashboards to enterprise buyers, any context where seeing “Chartcastr” in the header would feel off-brand. Worth the setup time when the recipient is paying attention to who sent it.

Quick start — Managed

1

Enable in Chartcastr

Settings → Destinations → WhatsApp → Connect → Enable managed WhatsApp. No credentials, no Meta Developer account. One click.
2

Invite a recipient (reverse opt-in)

In the same dialog: Add recipient → set an optional label (e.g. “Sarah — CFO”) → Generate invite. You’ll see a QR code and a wa.me/... link with a prefilled “verify WA-XXXXXXXX” message.
  • For your own phone: scan the QR code with your phone — WhatsApp opens with the message ready to send. Tap send. Done.
  • For a teammate: share the link via Slack, email, or paste the prefilled message. They tap it, hit send from their own WhatsApp, and they’re added.
Chartcastr never messages a phone before that phone messages us — the inbound message is the consent record Meta wants on file, and it eliminates the abuse vector of typing in someone else’s number.
3

(Optional) Link a group chat

Add Chartcastr’s WhatsApp number to a group → from inside the group, send chartcastr link from a phone you’ve already verified. The group appears in your destination picker.
WhatsApp group delivery is still in limited beta with Meta. We record linked groups now and switch deliveries on automatically once Meta enables group send.
4

Create a connection

Create a connection from any data source (Google Sheets, HubSpot, etc.) → pick the verified WhatsApp number or group → set a schedule. Done.

Recipient confirmation notifications

When a teammate self-adds via your invite link, Chartcastr can let you know through three channels — toggle each from Settings → WhatsApp → Settings tab → Recipient confirmation notifications:
  • In-app (default on) — toast + new row in the recipients list.
  • Email (default on) — email to the admin who created the invite.
  • WhatsApp DM (default off) — Chartcastr WhatsApps you on your own verified number. Useful for one-person teams; requires you to have completed your own invite first.

Branded — talk to us

Charts delivered from your company’s number, with your verified business name in the header. The setup we drive for you:
  1. Discovery (~30 min) — we ask about your volume, regions, message use case, and existing Meta Business assets. Drives whether you bring a number or we buy one for you.
  2. Meta Business verification — your business gets verified inside Meta Business Manager (if it isn’t already). Required for the WABA.
  3. Phone provisioning — usually a US Twilio number ($1.15/mo) gets verified into your new WABA, but you can bring an existing number too.
  4. System User token + handover — we set up the long-lived API token, paste it into Chartcastr, and run an end-to-end test together.
  5. Templates (later, if needed) — for sending outside the 24-hour customer-service window, we draft and submit utility templates to Meta for approval.
Pricing starts at $85/mo per account and scales with volume + the number of Meta-side assets we maintain for you. Meta per-message fees are passed through at cost. Get in touch about Branded → — we usually respond within a business day. Or click Get in touch inside the in-app WhatsApp dialog and we’ll spin up a thread.

The 24-hour window rule

Meta only allows free-form business-initiated messages within 24 hours of the recipient’s last inbound message.
  • Managed: the reverse-opt-in invite tap counts as a customer-initiated message, which opens the window cleanly for the first deliveries. Subsequent replies and reactions on each pulse keep the window open indefinitely.
  • Branded: same rule applies on your WABA. The first delivery to a brand-new recipient who’s never messaged you needs an approved Message Template — we help you submit one during onboarding.
If a pulse fails with error.code: 131051 or 131047, the recipient is outside the 24-hour window. Have them text the business number once (“hi” works) to reopen it.

Architecture

┌──────────────┐ chart.png + AI summary ┌────────────────────┐
│  Chartcastr  │ ─────────────────────▶│  WhatsApp Cloud    │
│  Pulse Run   │  POST /messages       │  API (graph.fb)    │
└──────────────┘                       └────────────────────┘
       ▲                                          │
       │ X-Hub-Signature-256                       │ wamid.*
       │ POST /webhook/integrations/whatsapp       ▼
       └────── inbound reply / reaction ── recipient phone
                                          OR group chat
  • Outbound: image uploaded to /{phoneNumberId}/media → media ID sent in an image message with caption → long analysis sent as a text message with context.message_id referencing the image’s wamid (renders as a thread).
  • Inbound: Meta POSTs replies to /webhook/integrations/whatsapp. Three things happen:
    • Messages containing a WA-XXXXXXXX invite token consume the matching invite, capture the sender’s phone as a verified Destination, and send a confirmation reply.
    • The literal token chartcastr link inside a group registers the group as a destination (group-id-keyed, scoped to the org of the verified sender — so no leaks across customers).
    • Replies and reactions on a delivered chart correlate to the pulse via context.id = wamid and trigger an AI follow-up reply.

Supported sources

WhatsApp works with every Chartcastr data source.

Google Sheets

Send live KPIs to a co-founder’s phone every morning.

Shopify

Daily revenue snapshots to your phone.

HubSpot

Pipeline health pulses to the CRO.

Linear

Weekly velocity to the engineering lead.

Limits and gotchas

  • Caption capped at 1024 chars (Chartcastr trims with ).
  • Text body (analysis) capped at 4096 chars.
  • Rate limits: tier-based, starting at 1k unique recipients / 24h for an unverified business. Watch the WABA quality rating.
  • Reactions arrive as type: reaction events — Chartcastr treats them like a one-character reply.
  • Group send is gated on Meta — schema and UX exist now; actual outbound to groups flips on automatically once Meta promotes group send out of limited beta.

Troubleshooting

SymptomLikely cause
error.code: 131051 or 131047Recipient is outside the 24-hour window. Have them message your business number, or use a template (Branded).
error.code: 190 (token expired)Branded only — the System User token was revoked or expired. Ping us and we’ll regenerate it in Business Manager.
Verification code doesn’t arriveConfirm the number is on WhatsApp (the app is installed and registered). Try Re-send code.
Webhook never firesBranded only — subscribe the messages field on the WABA in Configuration, not just on the app.
Image fails to sendMake sure the chart URL is reachable; we fall back to image.link when the in-app media upload fails.

Next Steps