Rank #1 of 6 in Email Marketing

Customer.io
Built-in AI assistantPeaberry Software, Inc. (Customer.io) · commercial
Try itExperimental
See what an agent can do with Customer.io before you ever sign up. Pick a story: recorded sessions replay real probe-harness transcripts; the live MCP handshake runs real requests from our edge, right now — including, where the server allows it, one real read-only tool call (bring your own key for auth-gated servers); sandboxed self-drive sessions are designed and gated (docs/TRY-IT.md).
$curl -si https://api.customer.io/v1/campaigns | head -3 # the documented App API, keyless → 401recorded session — replayed, not liveVerified integrations
No integration evidence found in our corpus for this product yet — that means none was found, never that it doesn’t integrate.
By theme — the product's score on each story themeBy theme
Agenticness — how well agents can access and operate the productAgenticnessevidence →
How well agents can access and operate the product
Analytics attribution — stories about analytics attribution in this arenaAnalytics attributionevidence →
Stories about analytics attribution in this arena
Audience segmentation — stories about audience segmentation in this arenaAudience segmentationevidence →
Stories about audience segmentation in this arena
Automation depth — how much of the product can run unattendedAutomation depthevidence →
How much of the product can run unattended
Campaign sending — stories about campaign sending in this arenaCampaign sendingevidence →
Stories about campaign sending in this arena
Deliverability domains — stories about deliverability domains in this arenaDeliverability domainsevidence →
Stories about deliverability domains in this arena
Integrations webhooks — stories about integrations webhooks in this arenaIntegrations webhooksevidence →
Stories about integrations webhooks in this arena
Lifecycle automation — stories about lifecycle automation in this arenaLifecycle automationevidence →
Stories about lifecycle automation in this arena
List portability — stories about list portability in this arenaList portabilityevidence →
Stories about list portability in this arena
Marketing data access — stories about marketing data access in this arenaMarketing data accessevidence →
Stories about marketing data access in this arena
Openness — open source, data portability, and self-hosting storiesOpennessevidence →
Open source, data portability, and self-hosting stories
Privacy posture — data-handling and privacy storiesPrivacy postureevidence →
Data-handling and privacy stories
Template content — stories about template content in this arenaTemplate contentevidence →
Stories about template content in this arena
Transactional sending — stories about transactional sending in this arenaTransactional sendingevidence →
Stories about transactional sending in this arena
Story verdicts — every judged story with its evidenceStory verdicts
Follow the green: where the map greys out is where Customer.io stops today. ✓ full · ~ partial · ! disputed · — none · n/a not applicable.
Agenticness — how well agents can access and operate the productAgenticness
How well agents can access and operate the product
API surface
Drive the product through a documented public API
✓9/10
unlocks → Webhooks · Versioning policy · API sandbox · API/UI parity · Full data export · Subscribe webhooks to delivery and engagement events — sends, opens, clicks, bounces, unsubscribes — with a documented, signed payload
Subscribe to events via webhooks
—–
Build against official SDKs
~6/10
Issue scoped/least-privilege API credentials for an agent
~5/10
Connect an agent via an official MCP server
✓8/10
Download a machine-readable API spec (OpenAPI or equivalent)
✓9/10
Rely on versioned APIs with a documented deprecation policy
—0/10
Test against a sandbox environment without touching production data
—0/10
Explore an interactive API reference with runnable examples
~5/10
Docs for agents
Point an agent at llms.txt or agent-oriented docs
✓9/10
Agentic features
Delegate tasks to a built-in AI assistant inside the product
~6/10
unlocks → MCP client
Operate the product with natural-language commands
✓8/10
Plug MCP servers into this product so it can use their tools
—–
Get AI-generated insights and suggestions from my data inside the product
~5/10
Set up automations that run autonomously in the background
✓8/10
Analytics attribution — stories about analytics attribution in this arenaAnalytics attribution
Stories about analytics attribution in this arena
Audience segmentation — stories about audience segmentation in this arenaAudience segmentation
Stories about audience segmentation in this arena
An agent can translate a plain-language audience description into a real segment via the platform's programmatic surface
~4/10
Create, update, and suppress contacts with custom properties through the API at production scale
~6/10
Create and update segments, tags, or lists programmatically and read back exactly who is in them
~3/10
Build audience segments from profile attributes, tags, and behavioral events, and they stay live as data changes
✓7/10
Automation depth — how much of the product can run unattendedAutomation depth
How much of the product can run unattended
Automation depth
Define rules that trigger actions automatically on events
✓8/10
unlocks → Versioned workflows · See where any individual person sits inside an automation and pull or re-enter them without breaking the flow
Schedule recurring jobs or workflows
~6/10
unlocks → Versioned workflows
Perform bulk operations across many items at once
~5/10
Version, review, and roll back my automations
—0/10
Campaign sending — stories about campaign sending in this arenaCampaign sending
Stories about campaign sending in this arena
An agent can draft a campaign against a segment and leave it scheduled or queued for a human to approve before send
~5/10
Create and schedule a campaign or broadcast entirely through a documented public API, without touching the dashboard
~3/10
Compose an email campaign, pick its audience, and send or schedule it — the arena's table-stakes loop
✓7/10
A/B test subject lines or content variants and have the winner picked from real engagement
—–
Deliverability domains — stories about deliverability domains in this arenaDeliverability domains
Stories about deliverability domains in this arena
See bounce, complaint, and blocklist signals per send and get actionable guidance when deliverability degrades
—–
Authenticate my own sending domain — SPF, DKIM, DMARC alignment — with guided DNS setup and verification
—–
Unsubscribes, bounces, and spam complaints are suppressed automatically and honored across every send type — CAN-SPAM/GDPR hygiene by default
~3/10
Integrations webhooks — stories about integrations webhooks in this arenaIntegrations webhooks
Stories about integrations webhooks in this arena
Lifecycle automation — stories about lifecycle automation in this arenaLifecycle automation
Stories about lifecycle automation in this arena
Build multi-step lifecycle automations — welcome series, onboarding, winback — with branches, delays, and exit rules
~6/10
Fire a custom event from my product and have it trigger an automation for exactly that person
✓8/10
See where any individual person sits inside an automation and pull or re-enter them without breaking the flow
—0/10
List portability — stories about list portability in this arenaList portability
Stories about list portability in this arena
Marketing data access — stories about marketing data access in this arenaMarketing data access
Stories about marketing data access in this arena
An agent can pull my whole email program — audiences, live automations, recent campaign results — programmatically and report on what's working
~6/10
Read per-person engagement history — what was sent, opened, clicked — through the API for any contact
—0/10
Mint scoped or read-only API credentials so an agent or contractor can read analytics without the power to send
—0/10
Openness — open source, data portability, and self-hosting storiesOpenness
Open source, data portability, and self-hosting stories
Privacy posture — data-handling and privacy storiesPrivacy posture
Data-handling and privacy stories
Template content — stories about template content in this arenaTemplate content
Stories about template content in this arena
Have the platform's built-in AI draft or refine subject lines and email copy from a brief, inside the composer
~5/10
Design on-brand emails with a visual editor, reusable templates, and personalization tokens that render correctly across clients
~5/10
Manage email templates as code — HTML/MJML or API-managed templates with variable substitution — under version control
~3/10
Transactional sending — stories about transactional sending in this arenaTransactional sending
Stories about transactional sending in this arena
Send one-to-one transactional email — receipts, magic links, notifications — through the same platform's API alongside marketing sends
~6/10
Transactional email is kept separate from marketing — its own templates, suppression rules, and reputation — so a receipt still delivers to an unsubscribed contact
~5/10
Sorted by importance (agentic first) (high → low) · 58/58 stories · click a row’s chevron for the rationale and evidence
Drive the product through a documented public API G Agent access | ai-native user | Agenticness — how well agents can access and operate the productAgenticness | 3 | full | 9/10 | Tprobed | |
Connect an agent via an official MCP server G Agent access | ai-native user | Agenticness — how well agents can access and operate the productAgenticness | 3 | full | 8/10 | Tprobed | |
Delegate tasks to a built-in AI assistant inside the product G Agentic features | ai-native user | Agenticness — how well agents can access and operate the productAgenticness | 3 | partial | 6/10 | Tprobed | |
Plug MCP servers into this product so it can use their tools G Agent access | ai-native user | Agenticness — how well agents can access and operate the productAgenticness | 3 | none | untested | none yet | |
Download a machine-readable API spec (OpenAPI or equivalent) G Api quality | ai-native user | Agenticness — how well agents can access and operate the productAgenticness | 2 | full | 9/10 | Tprobed | |
Point an agent at llms.txt or agent-oriented docs G Agent access | ai-native user | Agenticness — how well agents can access and operate the productAgenticness | 2 | full | 9/10 | Tprobed | |
Operate the product with natural-language commands G Agentic features | ai-native user | Agenticness — how well agents can access and operate the productAgenticness | 2 | full | 8/10 | Tprobed | |
Set up automations that run autonomously in the background G Agentic features | ai-native user | Agenticness — how well agents can access and operate the productAgenticness | 2 | full | 8/10 | Cclaimed | |
Build against official SDKs G Agent access | ai-native user | Agenticness — how well agents can access and operate the productAgenticness | 2 | partial | 6/10 | Tprobed | |
Run the product headlessly / in CI for automation G Agent access | ai-native user | Agenticness — how well agents can access and operate the productAgenticness | 2 | partial | 6/10 | Tprobed | |
Explore an interactive API reference with runnable examples G Api quality | ai-native user | Agenticness — how well agents can access and operate the productAgenticness | 2 | partial | 5/10 | Tprobed | |
Get AI-generated insights and suggestions from my data inside the product G Agentic features | ai-native user | Agenticness — how well agents can access and operate the productAgenticness | 2 | partial | 5/10 | Cclaimed | |
Issue scoped/least-privilege API credentials for an agent G Agent access | ai-native user | Agenticness — how well agents can access and operate the productAgenticness | 2 | partial | 5/10 | Tprobed | |
Use an official CLI G Agent access | ai-native user | Agenticness — how well agents can access and operate the productAgenticness | 2 | partial | 5/10 | Cclaimed | |
Rely on versioned APIs with a documented deprecation policy G Api quality | ai-native user | Agenticness — how well agents can access and operate the productAgenticness | 2 | none | 0/10 | ||
Subscribe to events via webhooks G Agent access | ai-native user | Agenticness — how well agents can access and operate the productAgenticness | 2 | none | untested | none yet | |
Test against a sandbox environment without touching production data G Api quality | ai-native user | Agenticness — how well agents can access and operate the productAgenticness | 1 | none | 0/10 | ||
Define rules that trigger actions automatically on events G | ai-native user | Automation depth — how much of the product can run unattendedAutomation depth | 3 | full | 8/10 | Cclaimed | |
Fire a custom event from my product and have it trigger an automation for exactly that person C Event triggers | developer | Lifecycle automation — stories about lifecycle automation in this arenaLifecycle automation | 3 | full | 8/10 | Cclaimed | |
Build audience segments from profile attributes, tags, and behavioral events, and they stay live as data changes C Segment core | marketer | Audience segmentation — stories about audience segmentation in this arenaAudience segmentation | 3 | full | 7/10 | Xcommunity | |
Compose an email campaign, pick its audience, and send or schedule it — the arena's table-stakes loop C Campaign core | marketer | Campaign sending — stories about campaign sending in this arenaCampaign sending | 3 | full | 7/10 | Cclaimed | |
Build multi-step lifecycle automations — welcome series, onboarding, winback — with branches, delays, and exit rules C Automation core | marketer | Lifecycle automation — stories about lifecycle automation in this arenaLifecycle automation | 3 | partial | 6/10 | Xcommunity | |
Create, update, and suppress contacts with custom properties through the API at production scale C Api contacts | developer | Audience segmentation — stories about audience segmentation in this arenaAudience segmentation | 3 | partial | 6/10 | Tprobed | |
Send one-to-one transactional email — receipts, magic links, notifications — through the same platform's API alongside marketing sends C Transactional api | developer | Transactional sending — stories about transactional sending in this arenaTransactional sending | 3 | partial | 6/10 | Cclaimed | |
An agent can draft a campaign against a segment and leave it scheduled or queued for a human to approve before send C Agent campaigns | ai-native user | Campaign sending — stories about campaign sending in this arenaCampaign sending | 3 | partial | 5/10 | Tprobed | |
Create and schedule a campaign or broadcast entirely through a documented public API, without touching the dashboard C Api campaigns | developer | Campaign sending — stories about campaign sending in this arenaCampaign sending | 3 | partial | 3/10 | Cclaimed | |
Create and update segments, tags, or lists programmatically and read back exactly who is in them C Api segments | developer | Audience segmentation — stories about audience segmentation in this arenaAudience segmentation | 3 | partial | 3/10 | Xcommunity | |
Unsubscribes, bounces, and spam complaints are suppressed automatically and honored across every send type — CAN-SPAM/GDPR hygiene by default C Suppression | ops user | Deliverability domains — stories about deliverability domains in this arenaDeliverability domains | 3 | partial | 3/10 | Cclaimed | |
Export my entire audience — contacts, custom fields, tags, engagement history, and suppression list — in an open format, self-serve C Export | founder | List portability — stories about list portability in this arenaList portability | 3 | none | 0/10 | ||
Read per-person engagement history — what was sent, opened, clicked — through the API for any contact C Api access | developer | Marketing data access — stories about marketing data access in this arenaMarketing data access | 3 | none | 0/10 | ||
Subscribe webhooks to delivery and engagement events — sends, opens, clicks, bounces, unsubscribes — with a documented, signed payload C Webhooks | developer | Integrations webhooks — stories about integrations webhooks in this arenaIntegrations webhooks | 3 | none | 0/10 | ||
Authenticate my own sending domain — SPF, DKIM, DMARC alignment — with guided DNS setup and verification C Domain auth | ops user | Deliverability domains — stories about deliverability domains in this arenaDeliverability domains | 3 | none | untested | none yet | |
Export all of my data in open formats and leave G | ai-native user | Openness — open source, data portability, and self-hosting storiesOpenness | 3 | none | untested | none yet | |
Prevent my data from being used to train AI models G | ai-native user | Privacy posture — data-handling and privacy storiesPrivacy posture | 3 | none | untested | none yet | |
Read opens, clicks, unsubscribes, and conversions per campaign and per automation step, over time C Reporting core | marketer | Analytics attribution — stories about analytics attribution in this arenaAnalytics attribution | 3 | none | untested | none yet | |
Self-host the core product G | ai-native user | Openness — open source, data portability, and self-hosting storiesOpenness | 3 | n/a | untested | none yet | |
An agent can pull my whole email program — audiences, live automations, recent campaign results — programmatically and report on what's working C Agent access | ai-native user | Marketing data access — stories about marketing data access in this arenaMarketing data access | 2 | partial | 6/10 | Tprobed | |
Control data retention and deletion G | ai-native user | Privacy posture — data-handling and privacy storiesPrivacy posture | 2 | partial | 6/10 | Cclaimed | |
Schedule recurring jobs or workflows G | ai-native user | Automation depth — how much of the product can run unattendedAutomation depth | 2 | partial | 6/10 | Tprobed | |
Design on-brand emails with a visual editor, reusable templates, and personalization tokens that render correctly across clients C Editor | marketer | Template content — stories about template content in this arenaTemplate content | 2 | partial | 5/10 | Cclaimed | |
Have the platform's built-in AI draft or refine subject lines and email copy from a brief, inside the composer C Ai content | marketer | Template content — stories about template content in this arenaTemplate content | 2 | partial | 5/10 | Cclaimed | |
Perform bulk operations across many items at once G | ai-native user | Automation depth — how much of the product can run unattendedAutomation depth | 2 | partial | 5/10 | Cclaimed | |
Transactional email is kept separate from marketing — its own templates, suppression rules, and reputation — so a receipt still delivers to an unsubscribed contact C Transactional hygiene | ops user | Transactional sending — stories about transactional sending in this arenaTransactional sending | 2 | partial | 5/10 | Cclaimed | |
An agent can translate a plain-language audience description into a real segment via the platform's programmatic surface C Agent segments | ai-native user | Audience segmentation — stories about audience segmentation in this arenaAudience segmentation | 2 | partial | 4/10 | Tprobed | |
Connect the platform to my existing stack — Stripe or Shopify, a CDP like Segment, my product database — with maintained first-party integrations C First party integrations | ops user | Integrations webhooks — stories about integrations webhooks in this arenaIntegrations webhooks | 2 | partial | 4/10 | Cclaimed | |
Do everything through the API that I can do in the UI G | ai-native user | Openness — open source, data portability, and self-hosting storiesOpenness | 2 | disputed | 4/10 | Dcontradicted | |
Manage email templates as code — HTML/MJML or API-managed templates with variable substitution — under version control C Templates as code | developer | Template content — stories about template content in this arenaTemplate content | 2 | partial | 3/10 | Xcommunity | |
Mint scoped or read-only API credentials so an agent or contractor can read analytics without the power to send C Scoped access | ops user | Marketing data access — stories about marketing data access in this arenaMarketing data access | 2 | none | 0/10 | ||
Pull campaign and flow performance metrics through the API into my own warehouse or dashboards C Api metrics | developer | Analytics attribution — stories about analytics attribution in this arenaAnalytics attribution | 2 | none | 0/10 | ||
See where any individual person sits inside an automation and pull or re-enter them without breaking the flow C Flow operations | ops user | Lifecycle automation — stories about lifecycle automation in this arenaLifecycle automation | 2 | none | 0/10 | ||
A/B test subject lines or content variants and have the winner picked from real engagement C Experiments | marketer | Campaign sending — stories about campaign sending in this arenaCampaign sending | 2 | none | untested | none yet | |
Attribute signups or revenue to specific emails and flows, not just opens and clicks C Attribution | founder | Analytics attribution — stories about analytics attribution in this arenaAnalytics attribution | 2 | none | untested | none yet | |
Choose where my data is stored (region/residency) G | ai-native user | Privacy posture — data-handling and privacy storiesPrivacy posture | 2 | none | untested | none yet | |
Migrate in from another email platform with guided list import that preserves tags, custom fields, and unsubscribe state C Import migration | marketer | List portability — stories about list portability in this arenaList portability | 2 | none | untested | none yet | |
Opt out of telemetry and usage tracking G | ai-native user | Privacy posture — data-handling and privacy storiesPrivacy posture | 2 | none | untested | none yet | |
Read the product's source under an open license G | ai-native user | Openness — open source, data portability, and self-hosting storiesOpenness | 2 | n/a | untested | none yet | |
See bounce, complaint, and blocklist signals per send and get actionable guidance when deliverability degrades C Deliverability signals | marketer | Deliverability domains — stories about deliverability domains in this arenaDeliverability domains | 2 | none | untested | none yet | |
Version, review, and roll back my automations G | ai-native user | Automation depth — how much of the product can run unattendedAutomation depth | 1 | none | 0/10 |
Opportunities — the stories that would move this product's scores, from its own judged verdictsOpportunitiestop 8 of 45 stories with headroom
What would move Customer.io’s scores — derived from its own judged verdicts, biggest headroom first. Each line quotes what the judge found missing; shipping it (or evidencing it publicly) is the fix.
Agenticness — how well agents can access and operate the productPlug MCP servers into this product so it can use their tools
nonemoves agent-readyimpact 45
The story asks whether Customer.io lets a user plug external MCP servers into it so its AI can use their tools (Customer.io acting as an MCP client).
Analytics attribution — stories about analytics attribution in this arenaRead opens, clicks, unsubscribes, and conversions per campaign and per automation step, over time
nonemoves PA Scoreimpact 30
Missing: any mention of a reporting/analytics UI, per-step conversion tracking, or historical metrics API/export.
Deliverability domains — stories about deliverability domains in this arenaAuthenticate my own sending domain — SPF, DKIM, DMARC alignment — with guided DNS setup and verification
nonemoves PA Scoreimpact 30
No evidence in the pack addresses domain authentication (SPF/DKIM/DMARC) setup, guided DNS configuration, or verification workflows for sending domains — all evidence concerns AI/MCP integrations, APIs, journeys, and pricing.
Marketing data access — stories about marketing data access in this arenaRead per-person engagement history — what was sent, opened, clicked — through the API for any contact
nonemoves PA Scoreimpact 30
Missing: any mention of an Activities/Customer Journey read API, endpoint docs for per-person message history, or examples returning open/click events for a contact.
List portability — stories about list portability in this arenaExport my entire audience — contacts, custom fields, tags, engagement history, and suppression list — in an open format, self-serve
nonemoves PA Scoreimpact 30
Missing: any documentation of an export/download feature, open-format (CSV/JSON) audience export, or bulk API read endpoint for full contact/tag/engagement/suppression data.
Openness — open source, data portability, and self-hosting storiesExport all of my data in open formats and leave
nonemoves PA Scoreimpact 30
Evidence shows APIs for getting data in and out (Track/Pipelines API) but no documented bulk data export tool or open-format full account export/portability feature, nor any 'leave with your data' guarantee.
Integrations webhooks — stories about integrations webhooks in this arenaSubscribe webhooks to delivery and engagement events — sends, opens, clicks, bounces, unsubscribes — with a documented, signed payload
nonemoves PA Scoreimpact 30
Missing: documentation of webhook subscription endpoints/UI, event types supported, payload signing/verification mechanism, and any independent confirmation of reliability.
Privacy posture — data-handling and privacy storiesPrevent my data from being used to train AI models
nonemoves PA Scoreimpact 30
No evidence in the pack addresses AI-model training opt-out or data usage controls for Customer.io; all citations concern messaging automation, APIs, and MCP tooling, not AI training data policy.
Showing the top 8 of 45 — every none/partial verdict in the story verdicts table is headroom.
Think a verdict is wrong? Every verdicts-table row has a Flag link — see the methodology.
Coverage map — which docs area, API section, or community source covers which judged storiesCoverage map8 surfaces · 35 covered stories
Where the cited evidence behind each covered verdict came from — the same citations the verdicts table shows, no extra judging.
AI docs19 stories
- Point an agent at llms.txt or agent-oriented docs
- Connect an agent via an official MCP server
- Drive the product through a documented public API
- Issue scoped/least-privilege API credentials for an agent
- Get AI-generated insights and suggestions from my data inside the product
- Set up automations that run autonomously in the background
- Delegate tasks to a built-in AI assistant inside the product
- Operate the product with natural-language commands
- An agent can translate a plain-language audience description into a real segment via the platform's programmatic surface
- Schedule recurring jobs or workflows
- An agent can draft a campaign against a segment and leave it scheduled or queued for a human to approve before send
- Compose an email campaign, pick its audience, and send or schedule it — the arena's table-stakes loop
- Build multi-step lifecycle automations — welcome series, onboarding, winback — with branches, delays, and exit rules
- An agent can pull my whole email program — audiences, live automations, recent campaign results — programmatically and report on what's working
- Do everything through the API that I can do in the UI
- Control data retention and deletion
- Have the platform's built-in AI draft or refine subject lines and email copy from a brief, inside the composer
- Design on-brand emails with a visual editor, reusable templates, and personalization tokens that render correctly across clients
- Manage email templates as code — HTML/MJML or API-managed templates with variable substitution — under version control
Integrations docs19 stories
- Run the product headlessly / in CI for automation
- Drive the product through a documented public API
- Build against official SDKs
- Explore an interactive API reference with runnable examples
- Download a machine-readable API spec (OpenAPI or equivalent)
- An agent can translate a plain-language audience description into a real segment via the platform's programmatic surface
- Create, update, and suppress contacts with custom properties through the API at production scale
- Create and update segments, tags, or lists programmatically and read back exactly who is in them
- Build audience segments from profile attributes, tags, and behavioral events, and they stay live as data changes
- Perform bulk operations across many items at once
- Create and schedule a campaign or broadcast entirely through a documented public API, without touching the dashboard
- Compose an email campaign, pick its audience, and send or schedule it — the arena's table-stakes loop
- Unsubscribes, bounces, and spam complaints are suppressed automatically and honored across every send type — CAN-SPAM/GDPR hygiene by default
- Connect the platform to my existing stack — Stripe or Shopify, a CDP like Segment, my product database — with maintained first-party integrations
- Fire a custom event from my product and have it trigger an automation for exactly that person
- Do everything through the API that I can do in the UI
- Control data retention and deletion
- Send one-to-one transactional email — receipts, magic links, notifications — through the same platform's API alongside marketing sends
- Transactional email is kept separate from marketing — its own templates, suppression rules, and reputation — so a receipt still delivers to an unsubscribed contact
Messaging docs18 stories
- Set up automations that run autonomously in the background
- An agent can translate a plain-language audience description into a real segment via the platform's programmatic surface
- Create and update segments, tags, or lists programmatically and read back exactly who is in them
- Build audience segments from profile attributes, tags, and behavioral events, and they stay live as data changes
- Perform bulk operations across many items at once
- Define rules that trigger actions automatically on events
- Schedule recurring jobs or workflows
- An agent can draft a campaign against a segment and leave it scheduled or queued for a human to approve before send
- Create and schedule a campaign or broadcast entirely through a documented public API, without touching the dashboard
- Compose an email campaign, pick its audience, and send or schedule it — the arena's table-stakes loop
- Unsubscribes, bounces, and spam complaints are suppressed automatically and honored across every send type — CAN-SPAM/GDPR hygiene by default
- Connect the platform to my existing stack — Stripe or Shopify, a CDP like Segment, my product database — with maintained first-party integrations
- Build multi-step lifecycle automations — welcome series, onboarding, winback — with branches, delays, and exit rules
- Fire a custom event from my product and have it trigger an automation for exactly that person
- An agent can pull my whole email program — audiences, live automations, recent campaign results — programmatically and report on what's working
- Do everything through the API that I can do in the UI
- Send one-to-one transactional email — receipts, magic links, notifications — through the same platform's API alongside marketing sends
- Transactional email is kept separate from marketing — its own templates, suppression rules, and reputation — so a receipt still delivers to an unsubscribed contact
docs.customer.io14 stories
- Point an agent at llms.txt or agent-oriented docs
- Run the product headlessly / in CI for automation
- Use an official CLI
- Drive the product through a documented public API
- Get AI-generated insights and suggestions from my data inside the product
- Set up automations that run autonomously in the background
- Delegate tasks to a built-in AI assistant inside the product
- Operate the product with natural-language commands
- Define rules that trigger actions automatically on events
- Schedule recurring jobs or workflows
- Build multi-step lifecycle automations — welcome series, onboarding, winback — with branches, delays, and exit rules
- An agent can pull my whole email program — audiences, live automations, recent campaign results — programmatically and report on what's working
- Do everything through the API that I can do in the UI
- Have the platform's built-in AI draft or refine subject lines and email copy from a brief, inside the composer
Hacker News7 stories
- Build against official SDKs
- Create, update, and suppress contacts with custom properties through the API at production scale
- Create and update segments, tags, or lists programmatically and read back exactly who is in them
- Build audience segments from profile attributes, tags, and behavioral events, and they stay live as data changes
- Build multi-step lifecycle automations — welcome series, onboarding, winback — with branches, delays, and exit rules
- Do everything through the API that I can do in the UI
- Manage email templates as code — HTML/MJML or API-managed templates with variable substitution — under version control
OpenAPI spec6 stories
- Run the product headlessly / in CI for automation
- Drive the product through a documented public API
- Build against official SDKs
- Explore an interactive API reference with runnable examples
- Download a machine-readable API spec (OpenAPI or equivalent)
- Create, update, and suppress contacts with custom properties through the API at production scale
Pricing docs6 stories
- Get AI-generated insights and suggestions from my data inside the product
- Delegate tasks to a built-in AI assistant inside the product
- Compose an email campaign, pick its audience, and send or schedule it — the arena's table-stakes loop
- Have the platform's built-in AI draft or refine subject lines and email copy from a brief, inside the composer
- Design on-brand emails with a visual editor, reusable templates, and personalization tokens that render correctly across clients
- Manage email templates as code — HTML/MJML or API-managed templates with variable substitution — under version control
Probe proofs — replayable recordings from the probe harnessProbe proofs
Replayable recordings from our probe harness — see the Prove-It protocol to submit one.
$curl -si https://api.customer.io/v1/campaigns | head -3 # the documented App API, keyless → 401reproduced$ curl -si https://api.customer.io/v1/campaigns | head -3 # the documented App API, [redacted]less → 401 HTTP/2 401 access-control-allow-[redacted] access-control-allow-headers: Authorization,Content-Type,x-ui-version,x-is-background-request,x-workspace-hydra-id,x-workspace-id,x-active-session-index,x-active-account-id
$curl -si -X POST https://mcp.customer.io/mcp -H 'Content-Type: application/json' -d '<jsonrpc initialize>' # the hosted MCP server Customer.io documentsreproduced$ curl -si -X POST https://mcp.customer.io/mcp -H 'Content-Type: application/json' -d '<jsonrpc initialize>' # the hosted MCP server Customer.io documents HTTP/2 401 www-authenticate: Bearer realm="OAuth", error="invalid_[redacted]", error_description="Invalid or expired [redacted]", resource_metadata="https://mcp.customer.io/.well-known/oauth-protected-resource"
Claims vs evidence — vendor claims reconciled against independent verdictsClaims vs evidence
10 of 21 testable claims verified · 1 contradicted → integrity 38/100
21 distinct capability claims found in Customer.io’s own claimed-docs/GitHub materials, reconciled against our judge’s independent verdicts.
10
Verified
10
Unverified
1
Contradicted
14
Undersold
Verified (14)
“AI assistant can perform any UI action: build automations, draft messages, analyze performance”
Delegate tasks to a built-in AI assistant inside the productpartialproof ↗
“AI assistant can perform any UI action: build automations, draft messages, analyze performance”
Operate the product with natural-language commandsfullproof ↗
“Data ingestion via official SDKs or the Pipelines API”
“Data ingestion via official SDKs or the Pipelines API”
Drive the product through a documented public APIfullproof ↗
“Profiles can be deleted or suppressed by sending a specially named track event”
Create, update, and suppress contacts with custom properties through the API at production scalepartialproof ↗
“Track API sends real-time customer identification and event data into the workspace”
Create, update, and suppress contacts with custom properties through the API at production scalepartialproof ↗
“Postman collection provided to explore and test the APIs”
Explore an interactive API reference with runnable examplespartialproof ↗
“AI assistant can list all active automations in a workspace”
An agent can pull my whole email program — audiences, live automations, recent campaign results — programmatically and report on what's workingpartialproof ↗
“AI assistant can list all active automations in a workspace”
Operate the product with natural-language commandsfullproof ↗
“Segments page shows live audience groups like Paying Customers or Unsubscribed”
Build audience segments from profile attributes, tags, and behavioral events, and they stay live as data changesfullproof ↗
“AI assistant can draft a welcome email directly in Design Studio”
Delegate tasks to a built-in AI assistant inside the productpartialproof ↗
“Email design supports drag-and-drop visual editor and a code editor”
Manage email templates as code — HTML/MJML or API-managed templates with variable substitution — under version controlpartialproof ↗
“Multiple delays can be chained together within a single Wait Until automation block”
Build multi-step lifecycle automations — welcome series, onboarding, winback — with branches, delays, and exit rulespartialproof ↗
“Customer.io AI assistant can be used directly from Slack”
Delegate tasks to a built-in AI assistant inside the productpartialproof ↗
Unverified (12)
“Official CLI plus 'skills' package teaches AI assistants how to operate it”
“Broadcasts configured in UI can be triggered programmatically with a single API call”
Create and schedule a campaign or broadcast entirely through a documented public API, without touching the dashboardpartialproof ↗
“Profiles can be deleted or suppressed by sending a specially named track event”
Unsubscribes, bounces, and spam complaints are suppressed automatically and honored across every send type — CAN-SPAM/GDPR hygiene by defaultpartialproof ↗
“Track API sends real-time customer identification and event data into the workspace”
Fire a custom event from my product and have it trigger an automation for exactly that personfullproof ↗
“Automations can trigger on profile events or on segment membership changes”
Define rules that trigger actions automatically on eventsfullproof ↗
“Automations can trigger on profile events or on segment membership changes”
Fire a custom event from my product and have it trigger an automation for exactly that personfullproof ↗
“Broadcasts send a message to a defined list of recipients at a scheduled time”
Compose an email campaign, pick its audience, and send or schedule it — the arena's table-stakes loopfullproof ↗
“Transactional messaging supports receipts, registration confirmations, password resets, reminders, and shipping updates”
Send one-to-one transactional email — receipts, magic links, notifications — through the same platform's API alongside marketing sendspartialproof ↗
“AI can generate global design styles for emails”
Have the platform's built-in AI draft or refine subject lines and email copy from a brief, inside the composerpartialproof ↗
“AI assistant can draft a welcome email directly in Design Studio”
Have the platform's built-in AI draft or refine subject lines and email copy from a brief, inside the composerpartialproof ↗
“Email design supports drag-and-drop visual editor and a code editor”
Design on-brand emails with a visual editor, reusable templates, and personalization tokens that render correctly across clientspartialproof ↗
“Data can be piped into Customer.io using any preferred third-party tools or sources”
Connect the platform to my existing stack — Stripe or Shopify, a CDP like Segment, my product database — with maintained first-party integrationspartialproof ↗
Contradicted (1)
“API access separates read operations from write/delete so each can be approved independently, enabling least-privilege agent access”
Mint scoped or read-only API credentials so an agent or contractor can read analytics without the power to sendnoneproof ↗
Undersold (14)
Point an agent at llms.txt or agent-oriented docsfullproof ↗
Run the product headlessly / in CI for automationpartialproof ↗
Issue scoped/least-privilege API credentials for an agentpartialproof ↗
Get AI-generated insights and suggestions from my data inside the productpartialproof ↗
Set up automations that run autonomously in the backgroundfullproof ↗
Download a machine-readable API spec (OpenAPI or equivalent)fullproof ↗
An agent can translate a plain-language audience description into a real segment via the platform's programmatic surfacepartialproof ↗
Create and update segments, tags, or lists programmatically and read back exactly who is in thempartialproof ↗
Perform bulk operations across many items at oncepartialproof ↗
An agent can draft a campaign against a segment and leave it scheduled or queued for a human to approve before sendpartialproof ↗
Transactional email is kept separate from marketing — its own templates, suppression rules, and reputation — so a receipt still delivers to an unsubscribed contactpartialproof ↗
Claims outside our story set (2)
Real capability claims found in Customer.io’s own materials, but no story in this arena’s taxonomy covers them yet — that’s feedback on the taxonomy, not a mark against the product.
“Pipelines API supports objects and relationships via a /group endpoint”
source ↗“In-app messaging supports multiple mobile apps within the same workspace”
source ↗
Business model
No free tier — 14-day trial, then Essentials from $100/month scaling with profile count; Premium and enterprise plans on top.
pricing ↗Score trend
How this product’s scores have moved as evidence and verdicts are re-derived — a point per change, not per day.
Try Experimental
Run it in the microterminal →Recorded agent sessions — and a live MCP handshake where the vendor ships one.
Flag
⚑ Flag a verdictThink a verdict is wrong? Opens a prefilled GitHub issue — or use the ⚑ next to any verdict above.
For agents