← All Guides

Dynamic Conversion Values in Google Ads and Meta: Pass Real Revenue, Assign Lead Values, and Make Value-Based Bidding Work

How to send real transaction values with every purchase conversion, how to assign meaningful values to leads by type, how conversion value rules and offline value uploads refine them, and the thresholds and settings that make Target ROAS and Maximise Conversion Value actually work.

Atiqul Islam
Written by Atiqul Islam

Tracking & analytics specialist. 278+ GTM, GA4 and server-side tracking projects for clients in the US, UK and Australia.

Rather not do this yourself? I set this up for clients every week. Free 15-minute audit, no obligation.

Book a Free Audit

A conversion without a value tells the ad platform that every outcome is worth the same. For an ecommerce store that means a $20 order equals a $900 one. For a lead business it means a newsletter signup equals a quote request. Value-based bidding, Target ROAS and Maximise Conversion Value only work when the values are real or at least rank-ordered correctly. This guide covers how to send them, how to assign them for leads, how to refine them, and when to switch bidding.

Purchases: Send the Real Number

The purchase dataLayer carries the value and currency, and every platform tag reads it:

window.dataLayer.push({ ecommerce: null });
window.dataLayer.push({
  event: 'purchase',
  ecommerce: {
    transaction_id: '10234',
    value: 129.90,
    tax: 11.81,
    shipping: 9.95,
    currency: 'AUD',
    items: [ /* ... */ ]
  }
});

In GTM:

Decide once whether value includes tax and shipping. Order subtotal after discounts is the most common choice and matches what finance considers revenue.

Refunds and Cancellations

Google Ads supports conversion adjustments: upload a retraction or a restated value for a transaction ID within the window. GA4 supports a refund event. Meta has no refund event; most businesses accept the gap or restate through offline uploads. For stores with meaningful return rates, a weekly refund upload keeps ROAS honest.

Leads: Assign Values That Rank Correctly

Leads do not come with a price tag. Assign one per lead type using a simple formula:

value = close rate × average first-order or first-year value

Lead type Close rate Average value Assigned value
Quote request, replacement 25% $12,000 3,000
Quote request, repair 40% $600 240
Phone call over 60s 20% $2,500 500
Contact form, general 8% $2,500 200
Newsletter signup 1% $2,500 25

The absolute numbers matter less than the ranking. The account needs to know a replacement quote is worth more than a newsletter signup, not the exact margin.

Send the value with the lead event from a Lookup Table in GTM keyed on the form or service type:

// Pushed by the form success handler
window.dataLayer.push({
  event: 'form_submit_success',
  form_name: 'Quote request',
  lead_service: 'replacement',
  user_email: 'name@example.com'
});

GTM Lookup Table LT - lead value: input {{dlv - lead_service}}, rows replacement to 3000, repair to 240, default 200. Use it as the Conversion Value in the Google Ads tag, as value on the GA4 generate_lead event with currency, and as value on the Meta Lead event.

Refining Values After the Fact

Assigned values are estimates. Two mechanisms replace them with reality:

Settings That Make Values Count

Switching to Value-Based Bidding

  1. Confirm values are flowing: open the conversion action and check the Conversion value column over the last 30 days.
  2. Confirm volume: at least 15 valued conversions in 30 days for the campaign, ideally 30 or more.
  3. Move the campaign to Maximise Conversion Value with no target for two to three weeks.
  4. Read the achieved ROAS, then set a Target ROAS slightly below it to let the campaign scale, and tighten gradually.
  5. Review monthly. Reassign lead values twice a year as close rates change.

Meta's equivalent is value optimisation on Purchase or on a custom event with value, which needs sufficient valued events in the last week to be eligible.

Testing

Common Mistakes

Outcome

Every conversion carries a value that is either real or correctly ranked, bidding optimises toward revenue, and the platforms agree on what a good customer looks like. For most accounts this is where return on ad spend starts to move.

Frequently Asked Questions

Should leads have values?

Yes. Even approximate values let the account distinguish a quote request from a newsletter signup and let value-based bidding work for lead businesses. Derive them from close rate times average deal value per lead type, and update them twice a year.

What value should a purchase send: revenue, profit or something else?

Send what you want the account to maximise, consistently. Most send order revenue excluding tax and shipping. Some send gross margin through a server-side lookup. Whatever you choose, use the same definition in Google Ads, Meta and GA4 so the platforms agree.

When can I switch to Target ROAS?

Google recommends at least 15 conversions with values in the last 30 days for a campaign, and more is better. Start with Maximise Conversion Value without a target, let it learn for two to three weeks, then add a target around the observed ROAS.

What are conversion value rules?

Account-level adjustments that multiply or add to conversion values based on location, device or audience. Useful when a region or a returning-customer audience is worth more and your site cannot tell the difference at conversion time.

Why does Meta show a different value from Google Ads?

Different attribution windows, different conversion counting and different deduplication. If the raw values sent per event match, the per-platform totals will still differ by attribution. Check the event value in each platform's test tool, not the aggregate reports.

Want This Done Right the First Time?

Book a free 15-minute audit call. I'll review your setup, show you what is broken, and tell you exactly what it takes to fix it.

Chat Now