Hi,
I’m building an ad fraud protection tool that uses the Google Ads API and uploadClickConversions with GCLID / WBRAID / GBRAID to mark invalid trafficand then exclude those users via a user list built from a specific conversion action.
My upload looks like this (TypeScript / Node):
The conversion action is configured as:
Counting = Every(compatible with WBRAID/GBRAID),
Goal = Secondary,
“Don’t use a value”(only for invalid-traffic logic / exclusion, not bidding).
I then create a user list that includes users who have this conversion action(i.e. a conversion-based user list off this “Invalid Traffic” action) and exclude that list from campaigns.
When I upload a conversion ( I omit the consent object for all of my requests), the API call returns success (no partial failures), but:
I see far fewer conversionsfor this action in metrics than I’ve uploaded (e.g. in all_conversions), and
The user list stays small, as if most of the uploaded conversions are not being detected/eligible.
My questions:
For uploadClickConversions with GCLID/WBRAID/GBRAID, what is the expected behavior if the consent object is:
not provided at all,
provided with ad_user_data = DENIED, or
provided with ad_personalization = DENIED?
Specifically:
Will these conversions still appear in reports (e.g. all_conversions)?
Will they still be eligible to populate a conversion-based user list?
Is a conversion-based user list that is used only for exclusion(invalid traffic) still treated as “personalized advertising” and therefore requires ad_personalization = GRANTED?
Is the following pattern correct/allowed:
Only send identifiers and set ad_user_data + ad_personalization = GRANTED when I have ad personalization consent,
Never upload identifiers for users without such consent (so they never enter the user list),
And still expect conversions to be visible/usable where consent is granted?
When I omit the consent object completely, does Google infer consent state automatically from Consent Mode / other signals and silently treat some uploads as non-eligible (for reporting or user lists)? Or are such uploads supposed to behave the same as if consent were not restricted?
Right now uploads succeed (no explicit errors) but I see relatively few conversions and a small user list, so I’m trying to understand exactly how consent flags (or their absence) gate both conversion detectionand user list filling.
Thanks!
Will these conversions still appear in reports (e.g. all_conversions)?
Will they still be eligible to populate a conversion-based user list?

[2025-11-17 11:43:17Z GMT] This message is in relation to case "ref:!00D1U01174p.!500Ht01vTczS:ref" (ADR-00339498)