Back to Integration

Sync Leads from Google Sheets


Connect a Google Sheet to ABC Sales AI and every new row becomes a lead automatically. There are no scripts to paste and nothing to copy by hand, just link your sheet, map your columns, and you're done. New rows are imported within seconds.


ℹ️
This is the new, built-in way to connect a Google Sheet. It replaces the older Apps Script method, if you set that up before, you can switch to this and remove the script.



Before you start


Have these ready:


  • A Google account that can open the spreadsheet.
  • A spreadsheet with a header row (the row with your column titles).
  • At least a phone number or email column, a row needs one of these to become a lead.
  • One spare empty column we can use as a "status" column (we write the import result there, row by row).

💡
Put phone numbers in full international format with the country code, e.g. +60123456789. This makes sure leads match correctly and don't duplicate.



1. Connect your Google Sheet


  1. Go to IntegrationsGoogle Sheets.
  2. Click Connect Google and sign in. We only ask for access to the one file you choose, not your whole Google Drive.
  3. Use the picker to select your spreadsheet.
  4. Choose the tab (for example, Sheet1) that holds your leads.



2. Tell us about your sheet


  • Header row: which row holds your column titles. Your data should start on the row below it.
  • Status column: pick an empty column for us to write the import result into (more on this below). Don't use a column that already has your data in it.



3. Map your columns


Tell us what each column means by mapping it to a lead field:


  • Phone: the lead's phone number. Used to avoid duplicates.
  • Email: the lead's email address.
  • Name: the lead's name shown in your Inbox.
  • Tags: adds tags to the lead. Put several in one cell separated by , or ;.
  • Custom field: maps the cell into one of your custom fields (e.g. an appointment date).
  • Source: overrides the default source.
  • External ID: your own reference ID for the record.

⚠️
Every row needs a phone or email. A row with neither will show Pending in the status column until you add one, it won't import.



4. Turn it on


Save and enable the connection. That's it, your sheet is now linked.




How syncing works


  • New rows import in seconds. As soon as you add a row, Google tells us the sheet changed and we bring it in right away.
  • Automatic safety check every 30 minutes. A background check re-scans your sheet in case a live update was missed, so nothing slips through.
  • Sync now. You can press Sync now anytime to import immediately.

ℹ️
We only import new rows. Rows that have already been imported are skipped so your sheet never gets re-imported from the top.



The status column: what you'll see


After each sync we write the result into your status column. This is normal, so please don't edit those cells.


  • Imported (with a date and time). A new lead was created from this row. ✅
  • Imported … (updated). The row matched an existing lead (same phone), and that lead was updated.
  • Pending: add a phone or email to import. The row has no phone or email yet. Add one and it imports on the next sync.
  • Error: …. Something on this row couldn't be processed. The reason is shown in the cell (often a value that doesn't fit a custom field, like an invalid date). Fix the cell and it retries automatically.



Updating a row you already imported


The sync brings in new rows. If you edit a row that was already imported, the lead won't change, because the status cell still says "Imported."


To re-import an edited row, delete the text in that row's status cell. The next sync will treat it as new again and update the lead.




Avoiding duplicates


We match on phone number. If a new row has the same phone as an existing lead, we update that lead instead of creating a duplicate.


💡
Keep phone numbers in a consistent format (with the country code). Mismatched formats, or rows that only have an email, are the usual cause of duplicate leads.



Good to know


  • Big imports happen in batches. Up to 5,000 new rows are imported per sync. If you paste a large backlog, the rest come in on the following syncs automatically, already-imported rows don't count toward the limit.
  • Keep the sheet shared. If you un-share, rename away, move, or delete the linked file, we lose access and the connection is turned off. You'll need to reconnect it to resume syncing.
  • Custom fields are validated. If a column maps to a custom field, the value must fit that field's type (for example, a date field needs a valid date), or that row shows an Error.



Troubleshooting


New rows aren't importing.

  1. Make sure the connection is enabled.
  2. Confirm the sheet is still shared with the connected Google account (and hasn't been renamed away, moved, or deleted).
  3. Check the new rows have a phone or email.
  4. Look at the status cells on those rows, is there an Error? Read the message.
  5. Press Sync now. (If it works immediately, a live update was just missed, the 30-minute check would have caught it too.)

A row shows "Pending." It has no phone or email. Add one of them.


A row shows "Error: …". Read the message in the cell, it usually points to a value that doesn't fit a mapped field (e.g. a bad date). Fix the cell; it retries on the next sync.


I edited a row but the lead didn't update. Clear that row's status cell to re-import it (see "Updating a row you already imported").


I'm getting duplicate leads. Check your phone numbers are in a consistent format with the country code.


Syncing stopped completely. The linked sheet was probably un-shared, moved, or deleted, which turns the connection off. Reconnect the sheet.


Once it's set up, you can leave it running. Add rows to your sheet as usual and your leads appear in ABC Sales AI on their own.

Still need help?

Our support team is ready to assist you.

Contact Support