Skip to content
Via Webhook

Send Google Ads Lead Form Leads to LeadCentre

Google Ads can post each lead form submission straight to your LeadCentre webhook URL, with no automation tool in the middle. It works by position, though: Google sends the answers as a numbered list, and LeadCentre matches the numbers. Read this before you go live, particularly if your forms change often.

Via Webhook: The platform posts each lead to your LeadCentre webhook URL.

What This Does

When someone submits your lead form, Google sends LeadCentre a JSON post. LeadCentre checks the key in the URL, applies your field matching and creates a lead, and the new lead alert goes out.

How the answers arrive

The answers sit in a list called user_column_data. Each entry has a column_id saying what it is, such as EMAIL, and a string_value holding the answer. LeadCentre flattens nested data into dotted names, so on the matching screen you see rows like these, with the latest value beside each:

user_column_data.0.column_id      FULL_NAME
user_column_data.0.string_value   Sam Lee
user_column_data.1.column_id      PHONE_NUMBER
user_column_data.1.string_value   +447700900123
user_column_data.2.column_id      EMAIL
user_column_data.2.string_value   [email protected]

What matching by position means

  • Matching user_column_data.2.string_value to Email means "the third answer is the email". LeadCentre doesn't read column_id when it creates a lead.
  • If a question is reordered or removed, answers land in the wrong fields. A phone number could sit in Email. There's no error, and the lead still arrives. Adding a question is only flagged if it creates a new position.
  • Google's field reference doesn't promise an order for the list, so treat your first real lead as the check.
  • Use one key per form, unless two forms ask the same questions in the same order. Google lets one URL serve many forms, but in LeadCentre the matching belongs to the key.
  • After any form edit, look at the column_id rows on the matching screen and confirm each position still means what you matched it to.

If you change forms often or run many of them, route them through Zapier or Make instead. Zapier has a New Lead Form Entry trigger limited to one Zap per form, and you pick which answer goes under which name when you build the POST step. Check custom questions show up in its sample first. That adds another account and another paid step, so weigh it against how often your forms change.

Google's test data and LeadCentre's listening step

Google's Send test data button posts a fixed sample: a placeholder name, phone and email, marked is_test. It may not reflect your form's custom questions or real order. LeadCentre doesn't read is_test. What happens depends on the key:

  • Listening on: it's recorded as Test data and never becomes a lead. Google gets its 200 and shows a green message. This is what you want.
  • Listening off, nothing matched yet: it's held as Waiting for field matching, and becomes a placeholder lead when you save your matching.
  • Listening off, already matched: it becomes a real lead immediately. The alert goes out, and an Instant Reply goes to the placeholder address if you've switched those on.

So press Listen for test data before every Google test, and Stop listening straight after. A real lead arriving while listening is on counts as test data too, and won't become a lead.

What Google expects back

Google wants an HTTP 200, which LeadCentre sends when a post is accepted. Google's guide says 5XX responses can be retried and 4XX responses aren't, so a lead sent to a replaced URL (a 401) won't be sent again. Those leads stay in Google Ads. Google says it stores leads for 60 days, with CSV downloads covering the last 30, so download them and call those people. LeadCentre has no CSV import.

Useful For

  • PPC managers running lead form assets on Search, YouTube or Performance Max who are tired of CSV downloads
  • Agencies who want each client's leads in that client's own account, with one key per form
  • Trade business owners paying for clicks who want an alert when a form comes in, without logging in to Google Ads
  • Anyone who wants the Google click ID stored against the lead for their own reporting later

How Leads Flow Into LeadCentre

  1. Step 1

    A prospect submits your lead form

    From your ad, on Google's own form.

  2. Step 2

    Google posts the lead

    An HTTP POST with JSON goes to your LeadCentre webhook URL.

  3. Step 3

    LeadCentre reads each position

    Your saved matching says which numbered answer fills which field, and lead_id stops repeats.

  4. Step 4

    You get the alert

    A push notification goes to the app, with Call, Text, WhatsApp and Email buttons on the lead.

  5. Step 5

    You track what it became

    Move it through your pipeline and record the job value when it's won, so you can see what the form produced.

How to Set It Up

  1. 1

    Create one key per form

    In LeadCentre, go to Settings > Connections. Under "Add another key", type a name such as Google Ads boiler form and press "Create". Press "Copy" and keep the URL safe, as it's only shown once. The key's name becomes the lead's source, so a clear name helps your reporting. Then follow "Next: test and match fields".

  2. 2

    Start listening

    On the key's page, press "Listen for test data". It runs for 15 minutes and the page updates itself. Do this before Google's test, or the placeholder data can turn into a lead.

  3. 3

    Open the lead form in Google Ads

    For an existing form, open the Campaigns menu, go to Assets, choose Lead form above the table, hover over the form and press the pencil. For a new form, you reach the same editor when creating a Leads campaign. Expand Export leads from Google Ads, then Other data integration options. Google changes these labels, so check its help page if yours differ.

  4. 4

    Paste the URL and add a placeholder key

    Paste the full LeadCentre URL into Webhook URL, including the part after the question mark. In Webhook key, type a placeholder such as GoogleAds. Google's FAQ allows a placeholder where the receiving system has no secret to give. LeadCentre doesn't read this value, and your real key is already in the URL, so don't paste it in here.

  5. 5

    Send test data

    Press Send test data in Google Ads. A green message means LeadCentre answered with a 200. Then look at your key's page: the fields should appear under "2. Match the fields" within a few seconds.

  6. 6

    Match by position

    For each number, read the column_id row to see what it is, then choose the LeadCentre field on the string_value row with the same number. Match lead_id to Unique ID. Set the column_id and column_name rows, google_key, api_version and is_test to Do not use. Smart Match can spot an email address or UK mobile by its shape, but it can't read Google's labels, so expect to pick most by hand. Press "Save field matching".

  7. 7

    Stop listening and save the form

    Press "Stop listening" in LeadCentre, then save the form in Google Ads. From here, every submission becomes a lead.

  8. 8

    Check the first real lead

    When it arrives, open the key's page and compare the column_id rows with your matches, because the test sample may not match your form. You may see a notice about new fields to match, such as lead_submit_time or a custom question. Match them or choose Do not use, then save. If you'd rather match from real data, skip the matching step, stop listening and wait: the first real lead is held, you match from its answers, and saving releases it. Nobody is alerted until you save, so keep an eye out.

Supported Fields

N stands for the answer's position, starting at 0. Yours depend on your form, so read the column_id row with the same number before choosing. The column_id values below are from Google's reference, which lists many more. Google doesn't document how custom questions are labelled, so check what yours send.

Field sentUsually matched to
user_column_data.N.string_value where column_id is FULL_NAMEFull name
user_column_data.N.string_value where column_id is FIRST_NAME or LAST_NAMEFirst name or Last name
user_column_data.N.string_value where column_id is EMAILEmail
user_column_data.N.string_value where column_id is PHONE_NUMBERPhone (mobile or landline)
user_column_data.N.string_value where column_id is POSTAL_CODEPostcode
user_column_data.N.string_value where column_id is CITYTown / city
user_column_data.N.string_value where column_id is COMPANY_NAMECompany
user_column_data.N.string_value for a custom questionEnquiry type, or a custom field
lead_idUnique ID (stops duplicates)
lead_submit_timeDate received
gcl_idA custom field, such as Google click ID
campaign_id, form_idA custom field, or Do not use
user_column_data.N.column_id, user_column_data.N.column_nameDo not use
google_key, api_version, is_test, adgroup_id, creative_idDo not use

Common Problems

Send test data doesn't go green

Google needs an HTTP 200. Check you pasted the whole URL, including ?key= and everything after it, with no spaces. If you've replaced the URL or revoked the key, the old one answers 401. Google also counts saving a form without a successful test as a problem, so sort this out first.

Google shows green but my test data isn't showing in LeadCentre

You're probably looking at a different key's page, as each key shows its own data. Open the key whose URL you pasted. Listening lasts 15 minutes, so if it has run out, check Recent activity on that page, press "Listen for test data" again and resend.

A lead called FirstName LastName is in my Leads list

Google's test reached a key that wasn't listening, so it counted as a lead. LeadCentre doesn't read Google's is_test flag. Archive it, and press "Listen for test data" before you next press Send test data.

Answers are in the wrong fields, such as a phone number in Email

Positions have shifted, usually after a form edit. Open the key, press "Edit field matching", read the column_id rows and correct your matches, then save. This fixes new leads only, so correct the affected leads by hand.

Recent activity says "No name, phone or email"

Your matching found no contact details, which can also mean positions have shifted. Correct the matching and press "Save field matching". LeadCentre retries those posts, so the leads are recovered.

A lead shows "Waiting for field matching"

It arrived before anything was matched on that key, so it's held. Match the fields and press "Save field matching". The banner tells you how many waiting leads were added.

I lost the webhook URL

It's shown once, and LeadCentre only keeps a scrambled copy, so it can't be looked up. Open the key and press "Replace this URL", or "Get a URL to copy" if it has never been used. Copy the new URL into the form in Google Ads. Your field matching stays.

I need to rotate the key

"Replace this URL" stops the old one straight away, and Google doesn't retry a 401, so leads in the gap won't be resent. Do it at a quiet time, with the form open in Google Ads ready to paste. Download any leads from the gap from Google Ads. Listen first if you want to retest.

Questions About This Connection

Can LeadCentre match on column_id instead of position?

Not today. Matching works on the flattened field name, which for this payload includes the position. That's why this guide asks you to use one key per form and to recheck after any edit.

Does LeadCentre check Google's webhook key?

No. LeadCentre checks the key in the URL. Google's Webhook key field still needs a value, so a placeholder will do. It arrives as google_key, which you can set to Do not use.

Can LeadCentre send lead quality or conversions back to Google Ads?

Not today. Meta and Google conversion feedback is Coming Soon. You can keep gcl_id in a custom field and record won values in LeadCentre, so you have the click ID and the outcome together for your own reporting.

Can I use one URL on several forms?

Only if they ask the same questions and send them in the same order. Otherwise the same position means different things on different forms, and answers land in the wrong fields. Give each form its own key.

Does this cover Local Services Ads?

No. This guide is for lead form assets. Google Local Services Ads is Coming Soon.

Get Your Leads Flowing.

Set up your LeadCentre account, connect this source and see your next enquiry arrive on your phone.

Get Started