Zipline for Customer Support

An agent can only resolve what it can see

AI support agents are billed per resolution now, and Ada's data shows bots finishing 72% of chats without a human but truly solving only 52%1. The difference is context, because order status, refunds, and billing all need a live view of the customer's account.

The gap between containment and resolution

Vendors report two different numbers. Containment means the bot finished the chat without handing off, and resolution means the problem was actually solved. Across more than 350 deployments Ada measured a 20-point gap between the two, and that gap is customers who gave up and re-entered the expensive channel, where a live contact runs $8.01 against roughly ten cents for self-service2.

Customers feel the missing context too, with 74% frustrated by having to repeat information and 81% expecting a conversation to pick up where it left off, which is why Zendesk named "contextual intelligence" its 2026 theme3. The strongest published agent results all come from deployments wired deeply into customer systems.

The signals an agent vendor can't compute

It helps to separate state from signals. Current order status is state, a REST or MCP lookup that every agent vendor already bundles a connector for. Signals are computed instead: the customer's lifetime refund rate before the agent approves a goodwill credit, their 90-day contact frequency for routing, what they were doing in the app when the ticket opened, or a live churn or escalation score.

Producing those means aggregating event streams and returning an answer inside the few seconds an agent has to respond, and Intercom holds its connectors to a hard 15-second budget4. Refund abuse is the obvious place to start, since retailers lost an estimated $101B to returns fraud and abuse in 20235, and gating those decisions on live per-customer aggregates is exactly the kind of workload a feature platform exists for.

The models around the agent

Support automation is more than the agent itself. Routing, escalation risk, agent assist, and abuse scoring are predictive models that train offline and serve online, and they inherit the usual failure of features written twice and training data that doesn't quite match serving. The production bar is real, since Uber's ML ticket routing cut handle time about 10% in A/B tests6 and Airbnb serves support intent detection in under 50 ms7, and neither works unless the online features match what the model trained on.

Measure a signal against your ticket history

A candidate signal, whether a refund-abuse score or an escalation risk, becomes a training-data column in hours. You backfill it as of past ticket timestamps, retrain the routing or gating model, and measure against historical outcomes before wiring anything into the agent.

How Zipline works

A derived signal is defined once, over your order, billing, and ticket event streams. That same definition backfills point-in-time correct training data for the models around your agent and serves the live values through a plain API that agent tools or an MCP server can call, at under 10 ms P95 and sub-second freshness, so the agent and the model always work from the same numbers. Evaluation gets easier for the same reason, because you can replay an agent's decisions against the customer state that was actually knowable at the time rather than against today's warehouse tables.

Works under the agent you already chose

Whether you run Fin, Sierra, Decagon, Agentforce, or something in-house, Zipline sits underneath as the signal layer, feeding whichever agent you've chosen. It deploys in your own cloud, air-gapped if required, so customer data never gets copied into a vendor's context store.
"Chronon has been the ideal feature platform. Its config-based feature engineering and consistent use across training and serving have been game-changers. Since adopting Chronon, we've seen a 6x cost reduction and a 3x boost in runtime efficiency."
Krishna Chaitanya C., Senior Machine Learning Engineer, Roku

Proof

Zipline runs in production at Depop, an Ebay company, and at Credit Karma, an Intuit company. Underneath is Chronon, the engine we built at Airbnb, which Stripe co-maintains today and teams like Netflix, Uber, and OpenAI run in production.
See how a POC works →
Try it under your agent
A POC takes two to four weeks on a single signal set, such as refund-abuse gating or routing context. You backfill the training data and serve the live signals to your existing agent, on AWS, GCP, or Azure.

Sources

  1. 1. What is automated resolution (Ada), 2026
  2. 2. Self-service cost survey (Gartner), via DestinationCRM
  3. 3. CX Trends 2026 (Zendesk), 2025
  4. 4. Fin tasks and data connectors (Intercom)
  5. 5. Returns fraud and abuse report (NRF / Appriss), 2023
  6. 6. COTA ticket routing (Uber), 2018
  7. 7. ML in voice support (Airbnb), 2025