Why Does Google Ads Show Conversions but ROAS Is Zero? (How to Fix It)

If Google Ads shows conversions but your ROAS (the "Conv. value / cost" column) is zero, the conversion actions counting in that column have no value attached. Usually it is one of three things: the primary action is a lead or signup set to "Don't use a value", a GA4 key event was imported without a value parameter, or the purchase action that does carry revenue is set to secondary, so its value lands in "All conv. value" instead. The fix happens in Goals → Conversions, and it takes a few minutes once you know which action is responsible. Adstudio shows conversions, conversion value and ROAS per campaign next to your Meta and TikTok campaigns, so a zero stands out the day it appears.

TL;DR

  • ROAS in Google Ads is conversion value divided by cost. Conversions with no value add to the count and nothing to the value, so ROAS stays at 0.
  • Check every action that counts in the "Conversions" column: each must be primary and carry a value, either the transaction value or a fixed default.
  • GA4 imports only bring a value when the event itself sends value and currency.
  • A purchase action set to secondary reports in "All conv." and "All conv. value", not in the columns ROAS is built on, and Smart Bidding does not use it.
  • After you change conversion settings, value-based bidding re-learns over a few conversion cycles. Don't judge the fix on day two.

What does ROAS = 0 actually mean in Google Ads?

Google Ads reports return on ad spend as Conv. value / cost: the total value of the conversions counted in your "Conversions" column, divided by what you spent. Google's help page on conversion values describes value as the number that lets you measure business impact, not just the count of conversions, and it is what Target ROAS and Maximize conversion value bid on.

So when ROAS reads zero while conversions are above zero, Google is not telling you the campaigns lost money. It is telling you that the value side of the fraction is empty. Nothing about traffic, bids or creative is wrong yet. The measurement is.

That matters for two reasons. First, any report or dashboard built on that column now says your campaigns return nothing. Second, if a campaign is on a value-based bid strategy, it is being asked to maximize a number that is always zero.

Why does a conversion action have no value?

When you create or edit a conversion action in Google Ads, the value setting offers three choices, and Google explains the trade-off: a different value per conversion (the most accurate, needs your tag to pass the amount), the same value for every conversion (easy, less precise), or no value at all.

Here are the four patterns that produce "conversions but zero ROAS", roughly in the order you are most likely to find them:

  1. A lead or signup action set to "Don't use a value". Common on lead-gen accounts and on accounts that started tracking signups before purchases. Every form fill counts; none of them is worth anything to Google.
  2. An imported GA4 key event that sends no value. When you import GA4 key events into Google Ads, the value comes from the event in GA4. If the event fires without a value parameter, there is nothing to import.
  3. The tag sends the value as text, or without a currency. GA4's ecommerce guide asks you to set currency at the event level whenever you send value. A value that arrives as a string with a currency symbol, or a missing currency, is a classic reason revenue goes missing.
  4. The action with revenue is secondary. The purchase action has a value, but it is set to "Secondary (observe only)", so the only thing in "Conversions" is a valueless action. More on that below.

Primary vs secondary conversions: which one feeds ROAS?

Google's definition is short. Primary actions are reported in the "Conversions" column and used for bidding, as long as the goal they belong to is used for bidding. Secondary actions are for observation: they report in "All conversions" and are not used for bidding, unless they are part of a custom goal.

The ROAS column follows the primary side. So if you look at a campaign and see "Conversions" full of signups while purchases only show up in "All conv.", your ROAS is calculated from the signups alone. If those signups have no value, ROAS is zero, even though purchase revenue is sitting one column over.

The reverse mistake is just as common: a valueless micro-conversion (a page view, a scroll, an add to cart) is set to primary next to the purchase. ROAS is then not zero, but it is diluted, and Smart Bidding treats a page view as equal to a sale.

A good rule of thumb: for a sales campaign, the actions in "Conversions" should be the ones you would be happy to pay for, and each of them should carry a value. Everything else can be secondary and still show up in reporting.

How do I fix zero ROAS in Google Ads, step by step?

  1. List what counts. Go to Goals → Conversions → Summary. For each goal, note which actions are primary. Those are the only actions that can produce a non-zero ROAS.
  2. Open each primary action and check its value. If it says no value is used, decide: is this action worth money to you? If yes, set a value (the transaction value if your tag can pass it, otherwise a fixed default). If no, it probably should not be primary for a sales campaign.
  3. For GA4 imports, check the event in GA4, not in Google Ads. Open the event in GA4's reports or DebugView and confirm value arrives as a number with a currency. Fix the tag or the data layer at the source; Google Ads cannot import a value GA4 never received.
  4. Make the revenue action primary. In Goals → Conversions → Summary, open the goal, choose Edit goal, and under "Conversion action optimization" set the purchase action to Primary. This is the exact path Google documents.
  5. Check for duplicates while you are there. If both a Google Ads purchase tag and an imported GA4 purchase are primary, each sale can count twice. Keep one as primary and set the other to secondary.
  6. Leave bidding alone for a few cycles. Changing conversion settings puts value-based strategies into a learning period. Google says it can take a few conversion cycles to calibrate, and the length depends on conversion volume, how long your customers take to convert, and the bid strategy.

Note what the fix does not do: it does not backfill. Conversions that were recorded with no value stay that way, so expect ROAS to start reading correctly from the change onward. Compare periods after the fix, not across it.

How long until Smart Bidding adapts after I fix conversion values?

Think in conversion cycles, not days. A conversion cycle is how long it usually takes from a click to a conversion. If your buyers convert within a day, the learning period passes quickly; if they take two weeks, it takes weeks. Google's learning-period page lists the three things that set the duration: conversion volume, cycle length and bid strategy type.

Two practical habits help:

  • Change one thing at a time. If you fix values, swap primary actions and change the ROAS target in the same afternoon, you will not know which change moved the numbers.
  • Don't switch to Target ROAS on top of a zero. A campaign that has only ever reported zero value has no value history to learn from. Fix the measurement, let it record real values, then move to value-based bidding.

Does Meta Ads have the same problem?

Yes, in its own form. On Meta, purchase ROAS comes from the Purchase event, and the Meta Pixel reference lists currency and value as required parameters for it. A Purchase event that fires without them counts the purchase but brings no revenue, which looks exactly like the Google symptom: results, but a ROAS of zero.

TikTok behaves the same way: ROAS is only meaningful where the purchase event (Complete Payment) carries its value. A zero there means value is not tracked, not that the campaign returned nothing.

This is why it pays to look at all platforms in one place. When one platform shows healthy ROAS and another shows zero for the same products, the zero is almost always a tracking difference, and you catch it in minutes instead of at the end of the month. Our guide on seeing Google, Meta and TikTok spend in one report covers that setup.

How Adstudio helps you catch a zero ROAS early

Adstudio connects your Google Ads, Meta Ads and TikTok Ads accounts and puts spend, conversions, conversion value and ROAS per campaign side by side. Its AI assistant for Google Ads works on your live account data, so you can ask the questions from this article directly:

  • "Show me conversions, conversion value and ROAS by campaign for the last 30 days, Google, Meta and TikTok." Campaigns with conversions and a zero value line up next to each other, whatever the platform.
  • "Which of my Google Ads conversion actions are primary, and what category is each?" The assistant reads your conversion actions from the account, so you can see in one answer whether a signup is counting where a purchase should be.
  • "Audit my conversion setup." It checks each campaign's optimization goal against the campaign's own objective and reports conversion-bidding campaigns that are spending with no recorded conversions.
  • "Where am I spending with no return?" It lists campaigns with spend and zero conversions or ROAS below the target you give it, across Google, Meta and TikTok.

The same works for Meta through the AI assistant for Meta Ads. If the audit surfaces wasted spend beyond the tracking issue, our walkthrough on finding wasted ad spend in Google Ads picks up from there.

You can connect an account on the free plan and see the per-campaign view straight away; paid plans are on the pricing page.

FAQ

Why does Google Ads show conversions but no conversion value? Because the conversion actions in your "Conversions" column have no value attached. Either the action is set to use no value, the tag or GA4 event does not send one, or the action that does carry revenue is set to secondary.

What is the difference between "Conv. value" and "All conv. value"? "Conv. value" adds up the value of primary conversion actions, the ones used for bidding. "All conv. value" also includes secondary actions. If revenue only shows up in "All conv. value", your purchase action is secondary.

Should I give leads a conversion value in Google Ads? If you want to bid on value or compare lead campaigns by return, yes. A fixed value per lead that reflects what a lead is worth to your business on average is better than none. If leads are only an early signal and purchases happen later, keep leads secondary for sales campaigns.

Why is my ROAS different in Google Ads and GA4? They count different things. Google Ads credits conversions to ad clicks with its own attribution settings and counting rules, while GA4 reports the same revenue under its own attribution. Imported GA4 events can also arrive with a delay. Expect the numbers to be close, not identical, and compare trends rather than single days.

Will fixing conversion values change my past ROAS? No. Conversions already recorded without a value keep no value. ROAS starts reading correctly from the change onward, so compare periods that are fully after the fix.

Can I see ROAS for Google Ads, Meta Ads and TikTok Ads in one place? Yes. Adstudio shows spend, conversions, conversion value and ROAS per campaign for Google Ads, Meta Ads and TikTok Ads in one workspace, and its assistant can rank campaigns across all three by ROAS on request.

Platform behaviour described as of October 2026, per the linked Google, Meta and GA4 documentation.