⟨ BLOGPLAYBOOKSADVERTISING

Close the loop: CRM wins streamed back to LinkedIn

Closed-won deals from your CRM staged as LinkedIn conversion events each week, value included, so campaigns optimize toward revenue with an approval before anything is sent.

PlaybookHubSpotLinkedIn ConversionsCSVRUN BY THE DEMAND GENERATION AGENT →

The problem this solves

LinkedIn's algorithm optimizes toward whatever you tell it success looks like, and most advertisers tell it success is a form fill. So it dutifully finds more people who fill forms - which is a different species from people who buy. The revenue signal that would correct it exists, but it lives in your CRM as closed-won deals, and the pipe between the CRM and the ad platform was never built because it means an export, a hashing step, an API nobody set up, and a recurring obligation.

The teams that do close this loop report the same arc: the first weeks change little, and then the algorithm's idea of a good audience visibly shifts - toward the titles, company sizes, and behaviors that preceded actual deals. Optimization toward revenue is not a growth hack; it is telling the machine the truth about what worked and letting it do its job with real information.

This mission makes the loop a weekly habit with a human gate. It pulls the week's closed-won deals attributable to LinkedIn from your CRM, maps them to your conversion rule, and stages the event batch - values and close dates included, emails hashed at staging - for your approval. You review the batch; only your yes sends it.

How the mission runs

  1. Pull the wins. The CRM connection returns deals marked closed-won in the window, with contact email, close date, and deal value - filtered to those whose source or first touch traces to LinkedIn, so the signal stays honest.
  2. Map to the conversion rule. Events target your revenue conversion rule (the conversion-rules playbook creates it if missing). Each deal becomes one event: hashed email, the real close timestamp, the real value.
  3. Validate the windows. LinkedIn accepts events up to 90 days back; anything older or timestamped in the future is set aside and reported rather than silently dropped, so the batch you approve is exactly the batch that lands.
  4. Stage for approval. The batch parks in the Approvals queue with a plain summary: how many events, which rule, total value. Emails were hashed at staging, so the approval row never holds a raw address.
  5. Stream on your yes. An approved batch streams to LinkedIn with per-event acceptance reported back. Campaign Manager reflects the conversions within about a day, and the optimizer starts learning from revenue.

The prompt

This is the exact objective the agent receives. Swap the obvious placeholders for your own domain, segment or channel and run it as-is from the console, Slack, or the API.

⟨ THE MISSION PROMPT · PASTE AND RUN ⟩

Every week, pull the deals my CRM marked closed-won that came from LinkedIn, and stage their conversion events - value and close date included - so LinkedIn optimizes campaigns toward revenue. I approve each batch before anything is sent.

What comes back

A standing weekly loop: closed-won deals pulled from the CRM, mapped and validated as conversion events with values, staged behind your approval, and streamed on your decision - with an acceptance report per batch. LinkedIn learns what a customer looks like; you keep the send button.

Make it yours

  • Include opportunity-created as a second, lower-value rule so the algorithm gets an earlier signal on long sales cycles.
  • Run it monthly instead of weekly for low-volume, high-value pipelines where weekly batches would be single events.
  • Pair it with the true-ROAS report so the same streamed values feed the deck that judges the campaigns.

Frequently asked questions

Why does LinkedIn need my revenue data?

It does not need it - it uses it. Without outcome events the algorithm optimizes toward form fills; with them it optimizes toward people resembling your actual buyers. You are not giving data away for nothing: the payment is measurably better audience selection on your own campaigns.

What exactly leaves our systems?

Per event: a SHA-256 hash of the customer email, a timestamp, an optional value, and the conversion rule id. The hashing happens at staging - before anything is stored in the approval row - so no raw address is persisted or transmitted.

Can this send anything without me?

No. Every batch stops in the Approvals queue, and only an admin decision executes it. Skipping a week costs a week of signal; nothing streams in the background.

Go deeper

⟨ RUN IT INSTEAD OF READING IT ⟩

This mission runs minutes after signup.

Open a workspace, paste the prompt, and the Demand Generation Agent carries it end to end on your plan's monthly credits - evidence attached.

⟨ RELATED PLAYBOOKS ⟩