Office hours: Build your self-driving GTM engine·Oct 29, 9:00am PT, onlineRegister→
Cargo
  • PrimitivesData ModelsYour companies, contacts and deals, merged from every sourceContextWhat your team knows, as files every agent readsTerritoriesWho sells where, defined onceMailboxesMailboxes in your reps' names, warmed up and kept under limitsToolsThe actions your agents, plays and reps callAgentsAI that researches, decides and writes, reading your contextPlaysWorkflows that run on a trigger or a schedule, with retriesAppsInternal apps for your reps, hosted on Cargo
    Add-onsChrome ExtensionSell faster, right in your browserButtonTrigger AI agents inside your CRMFormTurn any tool into an embeddable formSlackTag Cargo in Slack. It does the GTM workGitHubPlan on every pull request, deploy on merge
    MoreProjectsDefine your entire GTM in codeCLIUse Cargo from your terminalMCPUse Cargo from Claude and ChatGPTDeveloper resourcesCargo API docs, OpenAPI spec, auth docs, webhooks, MCP serverAPI ReferenceExplore the Cargo APIDocumentationLearn how to use CargoIntegrationsConnected to your entire GTM stack
  • VeriffHow Veriff replaced MuleSoft with Cargo under NetSuite, Stripe and SalesforceAugmentHow Augment Code routes developer sign-ups to reps in under an hourWeights & BiasesHow Weights & Biases ships a new purchase signal in 2 days on CargoSee all
  • Pricing
  • Cookbooks
  • Blog
Sign in
Stories

How WorkOS gives every team shared GTM intelligence with Cargo

Jack Perales
@WorkOS
The Cargo CLI feels much more extensible and easy to use in code than other tools I've used.Jack Perales

WorkOS had plenty of people building GTM tools. What those builders needed was a common way to enrich a contact, assess an account and read or update CRM data, with control over what each new tool would cost.

Today, tens of bots and internal tools run with Cargo as their backend. A lead question in Slack, a developer signup and an event list can all draw on the same customer intelligence. The central team manages the shared methods; teams across the business decide how to use them.

Why WorkOS chose Cargo

WorkOS’s earlier event-enrichment setup was error-prone. Supporting more internal tools meant finding a way to keep its own qualification logic and data access without taking on every integration and execution problem behind them.

Cargo gave WorkOS reusable building blocks it could define in code, with branching, error handling and execution at scale underneath. WorkOS built methods for enrichment, scoring, lookups and CRM upserts, then exposed them through its own MCP and API layer. Cargo runs the underlying workflows; WorkOS manages how people and agents consume them.

WorkOS + CargoWhere Cargo sits in the WorkOS stack

WorkOS teams ask questions in Slack, and signups and events trigger workflows. Each request goes through WorkOS’s own API and MCP layer, which handles access, caching and spend, to enrichment, scoring and lookup tools running on Cargo. Every result is persisted to Snowflake and reused. WorkOS defines the tools in its repo, using Claude Code and the Cargo CLI.

Example pattern: define once, reuse across workflows.

typescript
const accountEnrichment = defineTool("account_enrichment", {
  workflow: enrichCompanyData,
});

uses.accountEnrichment({ domain: input.domain });

Define the tool once, then call it from another workflow. Each caller reuses the same enrichment logic.

How WorkOS built the system

1. Put shared GTM methods behind self-service tools

Anyone at WorkOS can ask in Slack whether a company is a good lead and get context for priority, ownership and follow-up. Bots and internal tools call the same methods to research stakeholders, enrich people and companies, or read and update CRM records.

New tools reuse those capabilities without their builders wiring up another set of providers. Enrichment records persist in Snowflake, and recent results are reused across requests. WorkOS keeps caching and spend controls in one place, so another team can experiment without paying to fetch information already gathered elsewhere.

Cookbook
CE

CRM enrichment

Create a reusable company-enrichment tool that other workflows can call.

View cookbook

2. Apply the same intelligence to every signup

WorkOS evaluates, scores and routes every signup within minutes. Cargo enriches the person and company and applies WorkOS’s qualification logic, giving the follow-up process the account context it needs.

Inbound becomes another consumer of the same shared tools. Qualification establishes priority and ownership early, so reps can act on relevant interest while it is fresh. A refinement to the scoring logic can serve this automatic flow and the internal tools people use to research accounts.

Cookbook
IQ

Inbound qualification

Enrich an inbound lead, apply your qualification rules and send qualified leads to follow-up.

View cookbook

3. Connect event decisions to sales follow-up

Before an event, the events team queries WorkOS’s database to select potential speakers from sponsor accounts. Account tier, readiness for WorkOS and customer status help determine whom to approach, without pulling a sales leader into every account review.

Afterward, the team uploads lead lists. Cargo enriches the records, and WorkOS’s system routes them to reps or automated email follow-up.

WorkOS + CargoEnrich event leads and route follow-up

After an event, WorkOS uploads its contact list. Cargo enriches people and companies through the shared methods already running across the business. WorkOS’s system routes the enriched records to reps or automated email follow-up, retaining the original event context.

The workflow combines tools already running across the business with WorkOS’s own event logic. Builders can adapt targeting through the CLI and reuse the enrichment paths behind it. Events can operate independently while staying coordinated with sales on account priority, ownership and follow-up.

What Cargo makes possible

Custom logic that stays easy to change. Builders use Cargo’s CLI and coding agents to refine workflows, inspect outputs and apply improvements to shared tools. As Jack Perales puts it, “the feedback loop became a lot tighter.”

Example pattern: give each signup a qualified next step.

typescript
const company = uses.accountEnrichment({
  domain: input.domain,
});
const fit = uses.qualifySignup({ company });
if (fit.isQualified === true) {
  uses.routeToSales({
    email: input.email,
    company,
  });
}

The same enrichment tool feeds qualification and follow-up. Custom tools apply the team’s rules and route qualified signups with their company context.

Execution the team does not have to build itself. Cargo handles the different enrichment paths and their errors, with visibility into runs when something needs attention. WorkOS can focus on the business logic while Cargo operates the workflows behind it. That “takes a very big management burden off of us,” says Jack. Errors still surface, but in a weekly readout rather than a broken tool.

"We have a regular readout from Cargo of the errors we had this week. We have Devin go through and review them and try to provide suggested solutions."

Jack Perales
@WorkOS

Experimentation with central control. Each team can build the interface it needs while WorkOS maintains common methods, enrichment records and spend controls. More ways to use customer data do not require a separate enrichment system for every tool.

What changed

40% lower cost per completed enrichment

Shared records and caching reduce repeated paid lookups. More teams can build GTM tools using existing enrichment while WorkOS manages spend centrally.

25% higher signup-to-qualified-opportunity conversion

Scoring and routing every signup within minutes gives sales a consistent way to identify promising accounts and act with the right context.

30% higher event-lead-to-qualified-opportunity conversion

Account intelligence connects event targeting to follow-up. Enriched leads reach the right rep or automated sequence with their priority established.

One-off skill
WE

Waterfall enrichment

Enrich a contact list across multiple providers before handing it to your follow-up workflow.

View skill

What other teams can learn

Start with the methods every GTM tool needs: enrichment, qualification and CRM access. Make those reusable before adding more bots or interfaces. Teams can then experiment with how they work, while the shared data, business rules and operating controls improve together.

Interested to know more about Cargo?
Weights & Biases
Previous
Weights & Biases
Next
Alaan
Alaan
WorkOSworkos.com
WorkOS
−40%Cost per completed enrichment
+25%Signup-to-qualified-opportunity conversion
+30%Event-lead-to-qualified-opportunity conversion
About WorkOS

WorkOS provides authentication and enterprise features for software companies, including single sign-on, directory sync and user management.

SectorDeveloper tools
Websiteworkos.com
Sociallinkedin
Content
  • Why WorkOS chose Cargo (1 min)
  • How WorkOS built the system (1 min)
  • What Cargo makes possible (1 min)
  • What changed (2 min)
  • What other teams can learn (1 min)

Build the self-driving GTM engine

Your coding agents build it on Cargo.Or our team builds, operates and improves it with you.

Start building
Cargo
Backed byY CombinatorSOC 2 Type IICertified
LinkedinX

Product

Data ModelsContextTerritoriesMailboxesToolsAI AgentsPlaysAppsIntegrationsPricing

Add-ons

Chrome extensionButtonFormSlackGitHub

Build

DocsDeveloper resourcesCargo API docsCargo OpenAPI specCargo auth docsCargo webhooksCargo MCP serverProjectsClaude CodeCodexCursorAll coding agents

Resources

ReportsBlogCustomer storiesCookbooksEnrichmentRoutingSignalsScoringCRM hygieneAd audiencesGTM skillsGTM EngineeringGlossaryCompareCargo x ClayCargo x WorkatoCargo x n8nCargo x DeeplineCargo x DefaultCargo x LeanDataCargo x UnifyCargo x ValleyCargo x Gojiberry

Company

ManifestoCommunityEventsJobsPartners DirectoryPartner Program

Legal

SecurityTerms of servicePrivacy PolicyRefundsDPASupport
© 2026 Cargo
 ////////    ///////    ////////     ////////    ///////
///         ///   ///   ///   ///   ///         ///   ///
///         ///   ///   ///   ///   ///         ///   ///
///         /////////   ////////    ///  ////   ///   ///
///         ///   ///   /// ///     ///   ///   ///   ///
///         ///   ///   ///  ///    ///   ///   ///   ///
 ////////   ///   ///   ///   ///    ///////     ///////

$ npm install -g @cargo-ai/cli