Skip to Content
Welcome to 10ex Docs — explore Tutorials, Guides, Reference, Concepts, Use Cases, and the Agent Store.
TutorialsLaunch your first ads campaign
Tutorial

Launch your first ads campaign

Outcome: a single brief produces platform-tailored creative on Google, LinkedIn, and Meta, with a custom audience pushed from your CRM segment.

Before you start

  • Admin access on the Google Ads, LinkedIn Ads, and Meta Ads accounts you want to push to
  • One CRM segment representing the audience you want to target
  • A clear offering description, two or three sentences is enough

Time: about 25 minutes if all three ad accounts are already connected. Plan for 45 minutes the first time, since each ad platform OAuth has its own quirks.

Steps

  1. Connect Google Ads, LinkedIn Ads, and Meta Ads under Connectors → Ads. Each connector requires admin scope on the underlying account so we can push custom audiences and create campaigns in paused state.
  2. Build the target Segment in CRM. A common starter is all leads with status prospect in a single industry, so the platform-side audiences stay focused enough for LinkedIn’s match-rate threshold.
  3. Run ads-strategy-lab for a multi-platform plan with budgets and KPIs. The output is a structured brief you can edit before any creative is generated.
  4. Run ad-copy-generator to produce LinkedIn, Meta, and Google variants. Each platform gets its own headline lengths, CTA conventions, and image aspect ratios.
  5. Launch with launch_ad_campaign per platform. Campaigns are created paused, so you can review in each native ad manager before flipping the switch.
MCP prompt

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

MCP prompt

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

How to verify the campaign launched cleanly

In each native ad manager, open the campaign and confirm three things: the custom audience size matches your segment (within the platform’s hashing tolerance), the daily budget matches what you sent, and at least one ad in each ad group has a “Eligible” status. Anything else means a creative or audience policy check is still pending.

If something looks wrong

  • LinkedIn audience shows “Below 300, ineligible”. LinkedIn requires a minimum match. Broaden your CRM segment or wait for hashing to finish (it can take up to a few hours after first push).
  • Google headline rejected for trademark. The ad-copy-generator pulls from your brand voice. If you used a competitor’s name there by accident, regenerate after editing Settings → Brand Voice.
  • Meta campaign created but ads didn’t render. Most often a missing image aspect ratio. Re-run generate_ad_copy with platforms: ["meta"] and the latest agent build will produce all three required ratios.

What to do next

Last updated on