Analytics and Tracking

Row Limit

Also called record limit, result cap

The maximum number of rows a connector, query or chart returns before the rest are quietly dropped.

Quick facts: Row Limit

Category
Analytics and Tracking
Also called
record limit, result cap
Level
Intermediate
Affects
Report totals, long-tail visibility, reconciliation with platforms
Where to see it
Looker Studio, Google Sheets add-ons, Google Ads and GA4 exports
In this article4
  1. How a row limit works
  2. Why row limits matter
  3. Where row limits go wrong
  4. How to act on it

How a row limit works

Every connection between a reporting tool and a platform has a ceiling on how much it will hand over in one go. Ask for keyword performance across a large account and the platform does not refuse — it returns rows up to the ceiling, ordered by whatever the query happened to sort on, and stops. The report draws a chart from what arrived, with nothing on screen to say that anything was left behind.

The limit can live in several places at once. The platform’s reporting interface has one, the connector that pulls from it has another, the spreadsheet or table receiving the data has a third, and the chart itself may only render a set number of rows. The tightest of them wins, and it is not always the one you were thinking about.

Detail is what decides whether you hit it. A report showing spend by campaign and month has few rows. The same report broken down by keyword, device, day and location multiplies out into an enormous table, because every combination becomes a row of its own.

Why row limits matter

Because the failure is silent and it lands on the total. A truncated table does not show an error; it shows a smaller number. Spend looks lower than the ad account says, conversions look lower than the CRM says, and the reconciliation that follows blames tracking rather than the connector.

It also skews conclusions in a predictable direction. When rows are cut off after sorting, what gets dropped is the long tail — the small keywords, the minor cities, the rarely bought products. Anyone reading the report concludes that the tail does not exist and stops looking for opportunity there.

Where row limits go wrong

The commonest mistake is building the most detailed possible view first, on the reasoning that detail can always be filtered later. That is the view most likely to be truncated, and it truncates before any filter is applied.

The second is comparing a truncated report to a platform screen and treating the gap as a tracking discrepancy. The third is trusting a report that once matched: an account that grows, adds keywords or expands into new locations will eventually cross a limit it was comfortably under when the report was built.

How to act on it

Check the totals against the platform before a report goes to anyone, and repeat that check when the account grows. Pull data at the coarsest level that answers the question and add detail only where it is needed, rather than pulling everything and filtering afterwards. Where the detail is genuinely required, split the pull by date range or by campaign so each request stays under the ceiling, or move the heavy lifting to a warehouse such as BigQuery and report from there. Add a row that shows the total to the report itself, so a truncation announces itself the next time it happens instead of quietly changing the answer.

Do and do not

Do

  • Reconcile report totals against the platform before sharing
  • Pull at the coarsest detail that answers the question
  • Split large requests by date range or campaign

Do not

  • Assume a missing total is a tracking problem
  • Build the most detailed view and filter afterwards
  • Trust a report that matched before the account grew

Questions people ask about this

How do I know if my report has hit a row limit?

Compare the report’s totals with the same figure shown in the platform’s own interface for the same date range. If the report is lower and the shortfall grows as you add detail to the breakdown, truncation is the likely cause rather than a tracking fault. Watch for a table that always stops at a suspiciously round number of rows.

Why does the report match one month and not the next?

Because the number of rows a query produces changes with the account. Add keywords, locations, products or campaigns and every extra combination becomes another row, so a report that sat comfortably under the ceiling can cross it without anyone changing the report. Recheck totals against the platform whenever the account grows noticeably.

What is the safest way to report on a very large account?

Pull at the level of detail the question actually needs, and split large pulls by date range or by campaign so no single request has to carry everything. If the detail is genuinely required across a long history, export into a data warehouse and build the report on top of that instead of querying the platform directly each time.

Related terms

Found this useful?

Share it, or ask an AI to summarise it

Back to the glossary

Knowing the term is the easy part

Applying it to your own site and budget is the work. Book a call and I will tell you what actually applies to you.