Why numbers can differ between reports

Viktor Ristic
Viktor Ristic
  • Updated

Overview

The same question asked in two places can return two numbers: a report and a module list in gaiia, a new report and its legacy version, or Analytics and an external system. Nearly every case comes down to a handful of causes.

In this article, we'll be covering those causes, how to check each one, and what to send us if the difference remains.

 

Check freshness first

Analytics lags gaiia by two to four hours (see How fresh is the data in Analytics?). A module list is live. Compare at a quiet time, or accept small differences for records created in the last few hours.

 

Compare definitions, not labels

Two columns with the same name can be computed differently:

  • A work order's vendor can come from the work order itself or from the technician assigned to it. Unassigned work orders have a vendor in the first case and none in the second, so counts by vendor differ.
  • Churned accounts can be counted by current status (Inactive) or by cancellation events. Accounts deactivated through a bulk change or a workflow have a status but no event, so event-based counts are lower.
  • Business accounts can be recorded as dedicated business records or as regular accounts typed "Business". Reports built on one won't include the other.
  • A tax column can describe the product's tax setup rather than the tax actually charged; a tax-exempt account then shows $0 on a taxable product.

When in doubt, hover the column header in the report: field descriptions explain what is counted.

 

Check date ranges and time zones

Legacy reports and the new experience compute relative dates differently:

  • Last N months: legacy counted back N months from today's date; the new experience starts at the first of the month.
  • Previous N days: legacy included today; the new experience does not.
  • Fixed ranges: legacy included the end date; the new experience stops at the start of it.
  • Days and months are cut in your organization's time zone. A system that works in UTC, or a colleague in another time zone, can place a late-evening event in the next day or month. Totals match; per-period counts shift by a few records.

 

Check what one row represents

A report that joins one-to-many data repeats rows. An order with three proposed appointment slots appears three times when appointment fields are included; an account with four saved cards appears four times when payment-method fields are included. Sums over such a report are inflated. Remove the one-to-many fields, or use the report designed for that grain (for example Orders instead of Order Appointment Details).

 

The reverse also happens: some legacy reports repeated rows this way, so their totals were too high. The IQ Fiber Sales by Agent legacy report counted every sale exactly twice; the new report shows the true count, with identical rankings and half the absolute numbers.

 

Check filters and matching

  • Text filters are case-sensitive: mtp and MTP are different values.
  • Durations are in minutes; legacy reports showed seconds.
  • A status filter such as Active excludes Pending, even if the module list you compare against shows both.

 

Know when empty is correct

Some reports legitimately return no rows for an organization: the Telephone reports when you don't provide voice service, or a business-account view of tickets when tickets aren't linked to business accounts. An empty result is not a failure if the filters are correct.

 

Reconcile step by step

  1. Pick one record that appears in one place and not the other.
  2. Note the exact filters on both sides, including the date range and its end date.
  3. Check that record's dates and status against each side's definition.
  4. Check whether one side repeats rows (same ID appearing more than once).
  5. In a custom report, force a refresh and compare again; built-in reports refresh on their own within 2 hours.

If the difference remains, contact support@gaiia.com with the two sources, the filters on each, one example record, and the two counts. That is enough for us to explain or fix it.

Was this article helpful?

Have more questions? Submit a request