My record count does not match my CRM
Two systems counting the same people will differ, and most of the differences are legitimate. This article names every reason they differ, shows you how to build a comparison in your CRM that should match, and says what to do when it still does not. If the count you are checking is deals rather than people, read My deal numbers look wrong first.
Before you start
You need the tool connected and at least one finished sync. Have your CRM open so you can build the matching view.
Note
Open Setup & diagnostics before anything else. It states, per tool, whether a sync has ever run, whether the last one failed, and how many contacts are held — which settles the two commonest causes on one screen.
First, get the two numbers you are actually comparing
Open Data sources under Intelligence Studio.
Each connected tool shows its record count and, where a sync has failed, the error.
Open your CRM.
Note the total it reports for the same object.
Contacts against contacts, not contacts against all records. Pipedrive Persons and Pipedrive Leads are different objects.
Write down both numbers and the time you took each.
Open Attribution & journeys under Intelligence Studio and choose the CRM & Sources tab.
Every connected source is listed there with its last sync date, any error, its notes and a Sync button.
Read the coverage line under the source.
When the point the sync covered through is more than a day old, it says "Covered through Nh ago". A count taken from a source that is 40 hours behind will not match a CRM report taken now.
The reasons the two legitimately differ
MarqIQ holds fewer records, and the gap is roughly what you deleted or merged recently
Why: Deletions do not arrive through the ordinary refresh, which can only ever ask what changed since a point in time. A deleted record stops being mentioned, and nothing distinguishes that from a record that did not change. They arrive through a separate lane that reads each vendor's explicit delete feed, and a record is only ever marked deleted from an id the vendor actually named.
Fix: Run a sync and compare again. A record marked deleted is hidden from every count but kept, and any later sync that sees it alive brings it back on its own.
You deleted people in Salesforce Marketing Cloud, Adobe Campaign or Adobe Journey Optimizer and the count never drops
Why: Those three sync engines have no delete lane. There is nothing to read, so nothing is marked deleted.
Fix: Treat their counts as a high-water mark rather than a live total. HubSpot, Salesforce, Marketo, Pipedrive, Zoho CRM, Microsoft Dynamics, Pardot (MCAE) and Mailchimp all have a lane.
Mailchimp shows fewer subscribers than MarqIQ holds
Why: Mailchimp's lane reads archived members, because an archived member is still named by the API. A permanently deleted member leaves no trace in it at all.
Fix: Archive rather than delete in Mailchimp when you want the count here to follow. Where members were already deleted outright, the difference stays.
Your Pipedrive deal count is lower here than in Pipedrive
Why: Pipedrive keeps Leads in its Leads Inbox and the sync writes them into the same store as deals. MarqIQ takes every one of them out of the deal count, because a lead has no pipeline and no outcome.
Fix: Read the caveat on the Data Audit tab — it names how many leads were set aside — and compare against a Pipedrive view of Deals only.
The sync says it is still running, or the count keeps climbing
Why: A first load runs in bounded chunks, and the browser drives the loop. The status line asks you to keep the tab open while it runs. Closing the tab stops the run where it is.
Fix: Leave the tab open until the runner says it is up to date. The saved position means the next run carries on rather than starting again, and a first load already in motion is picked up between the hourly runs too.
The last run reports records fetched but not written
Why: Records arrived from the vendor and did not land. A run that set records aside is reported as partial, not as a success.
Fix: Read the notes line on the CRM & Sources tab, which names what happened. It is shown on one truncated line, and it is hidden while that source is also reporting an error, so clear the error first if you cannot see it. Then run the sync again — the records are re-fetched from the saved position.
Your CRM view has a filter on it that you have stopped seeing
Why: A saved list, an owner filter or a default record-type filter is the single commonest cause of a mismatch, and it is on your side rather than here.
Fix: Build the comparison from the object's unfiltered total: HubSpot's Contacts total, a Salesforce SELECT COUNT() on the object, Pipedrive's Persons total.
Reports and the Data Audit disagree with each other as well
Why: Focus filters choose which records get enriched, normalised, scored and reported on. Reports honour them. The Data Audit describes the whole synced store.
Fix: Press Focus filters on the Intelligence Studio screen and clear them. You can also read the caveat on the Data Audit tab that says they are active. The data is already synced either way — a focus filter narrows the work, not the store.
An analysis states a smaller number than the store holds
Why: Above an analysis's cap MarqIQ reads an even sample rather than every record — one record in every N, chosen by a fixed hash of its id, so it spans your whole history and the same records are read on every visit. MarqIQ does not read only the newest records, because recent leads have had the least time to buy and would make every rate look worse than it is.
Fix: Read the population line at the top of the analysis. It says what was read, out of what, in the form "Read 12,400 of 44,900 people created 1 Jul 2026 – 30 Sep 2026 (of 77,662 in all): an even sample spread across the whole period." Shares are reliable; counts are the sample's. Each analysis has its own cap: 80,000 records for lead scoring and for the funnel, 60,000 form fills, and 2,000 closed deals for forecast accuracy.
The count matches over all time but not for a period
Why: The created-date range filters on the created date your tool gave the record, and a record with no created date falls outside every range.
Fix: Set Created to All time to compare totals. The Data Audit tab reports how many people carry no created date and says they are counted under All time only.
Records exist in the CRM that MarqIQ has never seen
Why: The connection reads with the permissions of the credentials you gave it. Records outside that visibility are not refused with an error — they are never returned at all.
Fix: Check the token or user against the sharing rules in your CRM, then reconnect and sync. On HubSpot, a missing object scope is the usual cause, and the connection page lists which scope each object needs. Edit the scopes on your private app at app.hubspot.com/l/private-apps
The count check MarqIQ runs for you
Once a week, one cheap call asks the vendor how many records it holds and compares that against the live count here.
- It runs on HubSpot contacts and on each synced Salesforce object. No other engine is reconciled today.
- A difference within 2% of the vendor's count, or within five records, is not reported — a count taken while a walk is in flight is always slightly off.
- Above that it writes a note: records in the source but not here, or here but not in the source, with the count and the percentage.
- It never deletes, never marks anything deleted and never forces a re-walk. A mismatch can mean a walk still in flight, records your token cannot see, or a filter difference, so MarqIQ reports the difference and leaves your records alone.
The note appears in the sync notes on the CRM & Sources tab. "A delta sync cannot find these; a full resync can" means exactly that: reconnect and let the tool run a full first load again.
If it did not work
The count reads zero and the connection looks healthy
Why: The sync completed and the portal returned nothing MarqIQ can see, or no sync has run yet. Those look identical on a count alone.
Fix: Open Setup & diagnostics. It tells the two apart: "HubSpot is connected but no sync has run yet" against "The HubSpot sync completed and returned no contacts."
Your tool is connected but there is no record count at all
Why: Only eleven tools have a sync engine. Anything else connects for field mapping and never pulls records.
Fix: The page says so in the tool's own name: "Google Ads is connected for field mapping only — MarqIQ does not pull Google Ads records yet, so there is nothing to sync or audit from it." Google Ads, Google Analytics 4, Snowflake and Custom API are all in this position today.
The number moved between two looks on the same day
Why: An active workspace is synced every hour, so a count taken before and after a run differs by whatever changed.
Fix: Read The numbers changed since I last looked for how to pin a figure that has to stay still.
You still cannot account for the difference
Why: Something is happening that this list does not cover.
Fix: Open a support case with the five things that make the difference reproducible: both counts, the time you took each, the screen and tool each came from, the created range set at the time, and the last-synced date in the page header.
Next steps
Related articles
Was this article helpful?