Keeping a connected list in sync
If you created a list by connecting a source like Google Sheets, Airtable or HubSpot, ListPlus doesn't keep it updated by itself by default: you bring fresh records in and push your edits back out yourself, with two separate, manual actions. Reload pulls the latest data from the source into the list, and Sync (in the status bar) writes your edits in ListPlus back to the source. For lists from HubSpot, Salesforce, Pipedrive, Airtable, Notion, Attio or Stripe you can also turn on Refresh automatically in the list's Set up page so a refresh runs for you on a schedule — see "Reload: what's kept, what's lost" for how that works; writing changes back always stays a manual, click-to-write action either way.
Reload: pulling fresh data in#
Lists created from a source with a stable record ID — HubSpot, Salesforce, Pipedrive, Airtable, Notion, Attio or Stripe — show a Reload icon in the list header (hover it to see "Reload from {source}"; on narrow windows, widen the window to see it). Clicking it fetches the current records from the source. Lists from Google Sheets, Lemlist, Phantombuster or Zoom have no Reload, because ListPlus can't reliably match their rows to the source records; re-import them instead. Every member of the workspace can reload the list, because the connected account is shared in the workspace. If the source was connected in a different workspace, you see "This data source was connected in another workspace and can only be reloaded there."
Attio lists match rows by _attio_id (do not remove that column) and
always reload everything; the Update choice below is not available for them.
For HubSpot lists the Reload icon opens two choices. Update fetches only the records that changed in HubSpot since the list was last fetched — changed ones are updated, new ones that match the list's filters are added (up to 1,000 per click; click again for more). It is quick and never removes a row. Reload everything fetches all records, as described here, and also removes rows HubSpot no longer returns. Records deleted in HubSpot only disappear with "Reload everything".
If you have open AI suggestions in the grid, or saved changes still waiting to sync back, a dialog warns you before reloading: it lists how many open suggestions would be lost (apply them first to keep them), explains that saved pending changes are resolved field by field (see below), and notes that your tags, enrichment results and quality data are kept. Click "Reload anyway" to continue.
What happens to your edits on Reload#
Your own edits are saved automatically, so every edit is covered. For each one, ListPlus compares what the source originally had, what you changed it to, and what the source has now:
- Source unchanged → your edit is kept.
- Source already matches your edit → the pending marker is cleared, nothing lost.
- Source has a different new value → the source value wins and your edit is overwritten.
Your CRM or source is the leading system: a field only you changed keeps your edit (ready to write back with Sync), a field the source changed too takes the source's value. The same rule applies to an automatic refresh and to every source.
Rows that are no longer in the source stay in your list when they carry your work — edits not yet synced back, enrichment results, a status or tags; rows without any of that are removed. Records that are new in the source are added, and columns you added in ListPlus are kept. See "Reload: what's kept, what's lost" for the full list. Open AI suggestions you haven't applied are not covered by this comparison at all — they're simply lost on reload, which is exactly why the warning dialog calls them out separately.
Sync: writing your edits back#
For five connected sources — Google Sheets, HubSpot, Notion, Salesforce and Attio — you can write your ListPlus edits back to the original record. When you have edited such a list, the status bar shows "N open changes | Sync"; click it to open the Changes panel, which lists the open changes. The first time, click Choose key column and pick the Primary Key Field (the column whose values identify each row in the source, such as its record ID), then Save & Enable Sync. Then click Write to {source} (for example "Write to HubSpot"): ListPlus reads the source, compares and writes in one go.
If the source changed one of those fields itself in the meantime, nothing is written yet: the panel says "{source} has changed in the meantime" and marks the rows. The source always wins on such a field — the list takes the source's value. Click Write anyway to write the rest. Only columns that came from the source are written back; edits in columns you added in ListPlus stay in the list and are never sent. Your own edits are already saved; open AI suggestions are not written until you click Apply in the list header.
Sync only updates existing source records with the values you changed in ListPlus — it never creates new records in the source and never deletes anything there, and it only runs when you click the button. Every member sees the open-changes count; only the workspace's owner and admins can write the changes back. The changes are written under the login of the person who connected the account.
For Attio this works only for lists imported from "People" or "Companies", not from "A list" (see "Setting up how changes push back to your source").
Lists from Stripe, Lemlist, Phantombuster or Zoom are import-only: the Changes panel does not offer writing back for them. Export the updated data instead.
Connecting a new source#
Nothing that goes through a connected tool works on Basic. Google Sheets, Airtable, Lemlist, Phantombuster, Zoom and other apps need Pro; HubSpot, Salesforce, Pipedrive, Attio, Notion and Stripe need Premium, and a reload or sync of a list goes by its source's plan. Every request to the tool costs credits (see the price list). See "Which plan do I need?". For a connection you already had before downgrading, see "Cancel, downgrade and leave".
To hand new contacts to a CRM rather than update the source a list came from, use a pipeline (see "Pipelines — send records on to your CRM, Slack, e-mail or API").
Related topics: connect-crm-and-sheets · push-changes-back · crm-credentials · pipelines-overview · which-plan-do-i-need · export-overview.
FAQ#
Does ListPlus keep my connected list updated automatically?#
By default, no — you pull a fresh copy in with Reload and write your edits back with Sync, both only when you click the button. For HubSpot, Salesforce, Pipedrive, Airtable, Notion, Attio or Stripe lists you can turn on Refresh automatically under Set up (the two sliders next to the list's name) to refresh the list daily or weekly; see "Reload: what's kept, what's lost".
What does the Reload button do?#
It fetches the current records from the connected source into your list. It appears on lists from HubSpot, Salesforce, Pipedrive, Airtable, Notion, Attio or Stripe (not Google Sheets), and every member of the workspace can use it.
What is the difference between Update and Reload everything?#
On HubSpot lists (the only source with this choice; Attio always reloads everything), Update fetches only the records that changed in HubSpot since the last fetch and adds new matching ones; it never removes a row. Reload everything fetches all records and also removes rows HubSpot no longer returns. Use Update for a quick refresh and Reload everything when the list should match HubSpot exactly.
Will reloading overwrite the changes I made in ListPlus?#
Not automatically. For each saved edit, ListPlus checks whether the source changed that field: if it didn't, your edit is kept; if the source now has a different value, the source wins and your edit is overwritten. Rows no longer in the source are removed only if they carry none of your work (pending edits, enrichment results, a status or tags).
What happens to my edits and open AI suggestions when I reload?#
Your own edits are saved automatically, so Reload compares them field by field with the source. Open AI suggestions you haven't applied are lost — the warning dialog before reload lists them separately, so click Apply in the list header first if you want to keep them.
Can I push my ListPlus edits back to Google Sheets, HubSpot or Salesforce?#
Yes, for sources that support it (see below): click "N open changes | Sync" in the status bar, then Write to {source} in the Changes panel (the first time, Choose key column). It updates the matching record with your value; only columns that came from the source are written, and if the source changed the same field meanwhile, the source's value wins.
Which connected sources support syncing changes back?#
Google Sheets, HubSpot, Notion, Salesforce and Attio (Attio only for lists imported from People or Companies). Lists from Airtable, Pipedrive, Stripe, Lemlist, Phantombuster and Zoom are import-only; syncing back isn't supported for them.
Does syncing create new records in the source, or only update existing ones?#
Only existing records. Sync never creates new records in the source and never deletes records there — new rows you add in ListPlus stay in ListPlus.
Who is allowed to reload or sync a connected list?#
Every member can use Reload and sees the open-changes count; only the workspace's owner and admins can write changes back. Both run under the login of the person who connected the account, and only in the workspace where it was connected.
What does writing changes back (Sync) cost, and which plan does it need?#
Writing changes back costs credits per request to the source — see the price list — and needs the plan of the list's source: Pro for Google Sheets, Premium for HubSpot, Salesforce, Attio and Notion. Where the tool allows it, ListPlus writes in batches; otherwise it needs one request per record, plus the reads that compare. If the balance runs out during a sync, the sync stops at the next request: what was written stays written, and the remaining changes stay open.
Does reloading or refreshing a list cost credits or need a plan?#
Yes — a reload, an update and each automatic refresh run need the source's plan (Pro, or Premium for HubSpot, Salesforce, Pipedrive, Attio, Notion and Stripe) and cost credits per request to the source; see the price list. If the balance runs out during a run, the run stops at the next request and the list keeps its previous state.
Why does my automatic refresh say the plan no longer includes this source?#
The workspace's plan was lowered, and the source needs Pro or Premium; the message reads "The workspace's plan no longer includes this source. Upgrade to refresh the list again." The refresh stays switched on and is tried again at each due time, so it resumes by itself once the plan includes the source; the same holds when the workspace has no credits left.