Setting Up Call Only Conversion Tracking

136 views
Skip to first unread message

Austin Pena

unread,
May 20, 2021, 12:33:57 PM5/20/21
to AdWords API and Google Ads API Forum
Hi there!

I'm trying to set up Call reporting where upload a value associated with a call.

At this point, I get this error:

Partial error ocurred: 'The call or the click leading to the call was not found., at conversions[0].caller_id'

I'm guessing I've got something silly wrong:

Here's my data (obfuscated a little)

The call came in at May third, 11:40am EST so I put my date like you see below. I have the records and the number came through Callrail to a dedicated Google Ads Phone Extension number so I know it happened.

data = [
[
'8986814---', # Customer ID
'5358598--', # conversion_action_id
'+12039025---', # caller_id
'2021-05-03 11:40:55-04:00', # call_start_time
'2021-05-03 19:32:55-04:00', # conversion_time, optional
50.45 # conversion_value, optional
]
]

My "Call Reporting" is on and I have tried this on phone calls that lasted either 31 seconds or 6 minutes.

Oddly, 
1. I don't see a conversion action for "calls from ads" could this be part of my problem?
2. I don't see any details for "Caller phone number" or the "phone call conversion" report

Is there a way to tell if call reporting has been turned on/off before this time? I am using the Google Ads client.

Code below:

# Get the ConversionUploadService client.
conversion_upload_service = client.get_service("ConversionUploadService")
call_conversions = []
for item in data:
customer_id = item[0]
conversion_action_id = item[1]
caller_id = item[2]
call_start_date_time = item[3]
conversion_date_time = item[4]
conversion_value = item[5]

# Create a call conversion in USD currency.
call_conversion = client.get_type("CallConversion")
call_conversion.conversion_action = client.get_service(
"ConversionActionService"
).conversion_action_path(customer_id, conversion_action_id)
call_conversion.caller_id = caller_id
call_conversion.call_start_date_time = call_start_date_time
call_conversion.conversion_date_time = conversion_date_time
call_conversion.conversion_value = conversion_value
call_conversion.currency_code = "USD"

call_conversions.append(call_conversion)

# Issue a request to upload the call conversion.
request = client.get_type("UploadCallConversionsRequest")
request.customer_id = customer_id
request.conversions = call_conversions
request.partial_failure = True
upload_call_conversions_response = (
conversion_upload_service.upload_call_conversions(request=request)
)

# Print any partial errors returned.
if upload_call_conversions_response.partial_failure_error:
print(
"Partial error ocurred: "
f"'{upload_call_conversions_response.partial_failure_error.message}'"
)

# Print the result if valid.
uploaded_call_conversion = upload_call_conversions_response.results[0]
if uploaded_call_conversion.call_start_date_time:
print(
"Uploaded call conversion that occurred at "
f"'{uploaded_call_conversion.call_start_date_time}' "
f"for caller ID '{uploaded_call_conversion.caller_id}' "
"to the conversion action with resource name "
f"'{uploaded_call_conversion.conversion_action}'."
)


Austin Pena

unread,
May 20, 2021, 4:50:43 PM5/20/21
to AdWords API and Google Ads API Forum
Solved: The phone numbers just weren't being tracked by google for some reason. Other accounts when using the "caller phone number" report I got what I needed
Reply all
Reply to author
Forward
0 new messages