Skip to Content
Welcome to 10ex Docs — explore Tutorials, Guides, Reference, Concepts, Use Cases, and the Agent Store.
Use Case

Ads playbooks

Channel: ads. Five personas split the work:

PersonaCrewUse
Mayaads-strategy-labCross-platform plan, ICP, targeting, campaign structure
Lunaad-copy-generatorHeadlines + primary text, all platforms
Dantecreative-studioVisual concepts and ad images
Zaragoogle-ads-managerGoogle: Search, Display, Video, PMax, Discovery, App, Local
Ravilinkedin-ads-managerLinkedIn: Sponsored Content, Message, Dynamic, Text
Elenameta-ads-managerMeta: Awareness, Traffic, Engagement, Leads, Sales, App

Who runs this: growth marketers, demand-gen leads, and agency operators with at least one ads account connected. You’ll get the most out of this channel if you’ve already built segments in the CRM.

10ex Ads Manager unified dashboard with Total Spend, Impressions, Clicks counters across Google, LinkedIn, and Meta accounts
Marketing → Ads. The unified dashboard across Zara / Ravi / Elena's accounts.

The motions

  • Audiences from lead lists. Push a Segment to Google, LinkedIn, or Meta as a custom audience. Ravi handles the LinkedIn API; Zara and Elena do the same on their platforms.
  • Retargeting from CRM events. Audience driven by behavioral signals (form fill, page visit, churn risk). Defined in Workflows where the trigger is a CRM event.
  • Creative variants. Luna generates platform-specific copy from a single brief, Dante generates the matching visuals. A/B testing happens in-platform.
  • Strategy lab. Maya runs a multi-platform plan with budgets and KPIs before any ad ships. Use for new product launches and quarterly planning.

Don’t go straight to Zara. The right sequence is Maya → Luna → Dante → Zara/Ravi/Elena.

  1. Maya plans the structure (ICP, targeting, awareness stage, campaigns).
  2. Luna writes copy variants per ad group.
  3. Dante designs the matching visuals.
  4. Zara, Ravi, or Elena push the campaign live on their platform.

Skipping Maya produces ads that work tactically but don’t fit the broader plan. Skipping Luna and Dante means the ads manager has no creatives to push.

What it looks like at the end: a multi-platform plan with 3 to 6 ad groups per platform, copy variants ready, visuals queued, and a single approval screen that launches everything once you press go.

Approval gating

Live campaigns spend money. Zara, Ravi, and Elena gate by default. You preview the campaign structure (ad groups, budgets, audiences, creatives) and approve before the launch button does anything. See Approval workflows.

Required connectors

PersonaRequired connectors
ZaraGoogle Ads (one or more accounts)
RaviLinkedIn Ads
ElenaMeta Ads
MayaNone (planning agent). Reads from connected ads accounts if available.
Luna, DanteNone

Common pitfalls

  • Launching without Maya. You’ll have ads, but no thesis. Spend goes up, learning doesn’t.
  • One creative per ad group. Luna and Dante exist to ship variants. Two headlines and two visuals per ad group is the minimum to learn anything.
  • Ignoring approval previews. The preview screen is where targeting mistakes get caught. Read it like you’re spending your own money.

Common questions

Can I run all three platforms from one Maya plan? Yes. Maya outputs a per-platform structure. Hand off to Zara, Ravi, and Elena in parallel.

Do I need separate creatives per platform? Luna and Dante adapt copy and visuals per platform automatically (LinkedIn gets professional tone, Meta gets thumbstop visuals, Google gets keyword-aligned headlines).

How do CRM audiences sync to the ad platforms? A Segment becomes a custom audience via the platform’s audience API. Refresh cadence is hourly by default; configurable per Segment.

MCP equivalents

MCP prompt

generate_ad_copy({ brand_id, offering: "X", platforms: ["linkedin", "meta", "google"] })

MCP prompt

launch_ad_campaign({ platform: "linkedin", segment_id, brand_id, daily_budget_usd: 50, objective: "lead_generation" })

MCP prompt

get_ad_campaign_metrics({ campaign_id }) // spend, impressions, clicks, leads

Last updated on