# Import leads from Google Sheets

> Connect a sheet, choose offices, and schedule new lead imports.

Language: en-US. Product guide: https://agencymesh.com/help/leads-sync/.

Last reviewed October 6, 2026 by AgencyMesh Product Support · Checked against release 2026.10

Open [Sync Leads](https://app.agencymesh.app/ill/sync-leads). You need Administrator access and an assigned active office. Imports add new leads; later sheet edits do not change saved details, Notes, office, or status.

<span id="leads-sync-connect"></span>

## Connect and preview the sheet

1. Use **Copy sharing email** beside **Spreadsheet sharing email**. In Google Sheets, share the sheet with that address as **Viewer**.
2. Click **Add lead source**. Enter **Source name** and **Google spreadsheet link**, then **Read spreadsheet**.
3. Choose **Spreadsheet tab** and **Header row**. Set **Check for new leads**, **First sync**, and **Assign new leads to** using the choices below. Add optional **Default lead type** and **Default source label**, then **Match columns**.
4. Match a phone or **Email**, plus **Lead type** unless a default supplies it. Names and **Notes** are optional. Use **View spreadsheet column samples** when a column is unclear. Choose **ID** as described below.
5. Click **Preview imports**. Resolve **Invalid rows** and wrong offices, then **Enable lead source**. This queues a sync; new leads appear after a [Leads Report](https://app.agencymesh.app/ill/illSearch) search or Dashboard refresh.

The preview shows the first **25 rows**; totals cover scanned rows. If the sheet changes, return to **Columns** and **Preview imports** again. Use a native Google Sheet, up to **2,000 data rows**, **100 columns**, and a **2 MB** response per tab.

<span id="leads-sync-first-sync"></span>

## Choose when imports start

**First sync** is locked after saving. Add a separate source for another spreadsheet tab.

- **Import existing rows and future leads**: import eligible rows now and new rows later.
- **Future leads only**: exclude row identities present when enabled. Fix invalid identities and unavailable offices before enabling.
- **Check for new leads**: choose every **5, 10, 15, 30, or 60 minutes**. **Sync now** queues an extra run.

<span id="leads-sync-office-assignment"></span>

## Choose the destination office

| Item | Guidance |
| --- | --- |
| Single office | Choose Office for every new lead. |
| Office column in spreadsheet | Choose Office column. Each row must name an allowed office; case and extra spaces are ignored. Blank or unclear names do not fall back to another office. |
| Split between selected offices | Choose at least two Selected offices. New leads are spread among them. |
| Random across all offices | Uses the owner’s assigned active offices except SHARED. |

In **Assign new leads to**, choose one of these options. Only the owner’s assigned active offices are available. Existing leads keep their office.

- A repeated identity keeps the same assignment while the office pool stays the same. Other modes can include SHARED.
- Changing **Spreadsheet tab** or **Header row** clears **Office column**; choose it again.

<span id="leads-sync-identity"></span>

## Choose how repeated rows are recognized

**Full name** splits at the first word, or uses “Last, First” when a comma is present. Mapped **First name** and **Last name** override those parts. **Notes** allows **2,000 characters**.

- Leave **ID** blank to use mapped name, contact, and address values. Moving a row keeps its identity; changing those values may make it new. Notes, type, and source do not affect it.
- Or map **ID** to a stable value for each request. Repeated IDs are processed once; an invalid copy does not block a valid one. The saved ID choice is locked.
- **Duplicates skipped** means no extra lead was created. A duplicate matches name and full address plus phone or email in the destination office pool. Unnamed leads must match contact values and address.
- **Already processed** means the identity was handled or excluded before. Changing an ID does not update a saved lead.

<span id="leads-sync-manage"></span>

<span id="leads-sync-recovery"></span>

## Manage or fix a source

1. Open the source’s **Manage** icon or **More actions**. Use **Sync now**, **Pause / Resume**, or **Disconnect / Reconnect**. Disconnect keeps imported leads and history; Resume queues a run.
2. Under **Manage > Rows needing attention**, find rejected rows. Fix the sheet, then **Sync now**. Each row needs phone or email, type, identity, and an allowed office.
3. For changed columns, use **Edit mapping / preview**, match columns, **Preview imports**, then **Save mapping and enable sync**.
4. For **Access needed** or **Tab unavailable**, restore Viewer sharing or the tab. If the owner lost access, an allowed Administrator must preview and save the mapping.

Saving mapping makes you the source owner; your role and office access govern later imports. **Refresh** updates results. **Manage > History** shows attempts; **Last synced** means the last successful run. **Pending** and **Syncing** are unfinished. Temporary connection failures retry automatically. If **Add lead source** is disabled, resolve the setup or office-access message shown on the page.

## Related guides

- [Add and follow up with leads](https://agencymesh.com/help/lead-management.md)
- [Follow up with customers](https://agencymesh.com/help/leads-and-quotes.md)
- [Work your daily tasks](https://agencymesh.com/help/dashboard.md)
- [Get the right access](https://agencymesh.com/help/roles-and-permissions.md)
