Counts and Discrepancy Troubleshooting
When your Gradient counts do not match your vendor or your PSA, the first instinct is often that something is broken. In most cases it is not .....
When your Gradient counts do not match your vendor or your PSA, the first instinct is often that something is broken. In most cases it is not — there is an explanation, and the fix is small. This article walks through the systematic way to track down where the discrepancy is coming from.
- PSA count and vendor count differ on a service card
- Gradient count is lower or higher than what the vendor portal shows
- Counts that were correct last month are now drifting
- A service card shows a dash, plug icon, or zero where you expect a number
In this article
First: understand what each count means
Service cards show counts from up to three sources. Knowing which is which is half the diagnosis.
| Count column | What it represents | Where it comes from |
|---|---|---|
| PSA Units | How many units of this service are currently on the customer's contract | Pulled from your PSA on the most recent PSA Sync |
| Vendor Units | How many units the vendor says are being consumed by this customer | Pulled from the vendor integration on the most recent Quick Sync |
| Reconciled Units | What you have approved as the correct billable count | The result of your reconciliation action (Approve, Reconcile, No Change) |
Dash (—): No count being received from the vendor for that service. Usually because the service is unmapped, or because the contract has ended its service term.
Crossed-out electric plug: There is an active contract in your PSA for this service, but no corresponding vendor integration is connected and contributing data.
Step 1: Confirm which count is wrong
Open the service card and click Review to see the Data Source widget. This shows exactly which vendor (or vendors) contributed to the Vendor Units count, and which PSA agreement contributed to the PSA Units count.
- Open the service card in question
- Click Review (or hover and click Review)
- Note the values shown for PSA Units and Vendor Units
- Cross-reference: PSA Units against your PSA, Vendor Units against the vendor portal
This will tell you which side is wrong. From here, the fix depends on which side.
Step 2A: PSA Units count is wrong
If Gradient shows a different PSA Units count than what is actually on the customer's contract right now, the issue is sync timing.
| Likely cause | Check this | Fix |
|---|---|---|
| Recent PSA change has not synced | Was the contract changed since the last sync? | Run a Full PSA Sync |
| Contract billing cycle is None | Open the contract in your PSA | Set Billing Cycle to a recurring value |
| Service is on a future-dated contract | Is the contract's start date in the future? | See note below |
| Service was cancelled in PSA but card is stale | Was the contract recently cancelled? | Service card will become stale; contact support@meetgradient.com if it does not clear |
Gradient pulls active contracts. A contract that does not become active until next month will not appear in the current reconciliation cycle. If you are reconciling for March 1 invoicing and the contract starts March 1, you may need to wait until after the contract is active to reconcile it.
Step 2B: Vendor Units count is wrong
This is the more common situation. Gradient is showing a vendor count that does not match the vendor portal. There are several reasons this can happen — work through them in order.
1. Sync timing
Vendor counts in Gradient are as fresh as the last sync. If the customer added or removed seats in the last few hours, Gradient may still be showing the prior state.
- Run a Quick Sync for that vendor
- Refresh the service card
- Re-compare to the vendor portal
2. Account mapping mismatch
If two vendor accounts exist for one customer (multi-site) and only one is mapped to the PSA company, you will be missing data from the unmapped site.
- Open the vendor integration's account mapping
- Search for the customer name
- Confirm every relevant vendor account is mapped to the right PSA company
- If a vendor account exists but is not mapped, map it now
- Run a Quick Sync
3. Service mapping mismatch
If the service exists in the vendor portal under a slightly different SKU than what you mapped, the count for that SKU will not flow through. This is the most common cause of “my count is exactly X short.”
- Open the integration's service mapping
- Search for the service you are reconciling
- Check if the vendor portal has multiple variants of that SKU
- Confirm you have mapped the right one (or mapped them all if you sell across variants)
This is the single most common cause of off-by-X counts on Pax8 services. Pax8 exposes most products in two variants: one with a billing and commitment term, and one with no term at all. You should always map the version with a term. The no-term version produces inaccurate counts.
4. Vendor-side configuration
The vendor portal may filter or exclude certain users from the count Gradient receives. The most common examples:
| Vendor | Common filter that affects counts |
|---|---|
| KnowBe4 | Inactive users may be excluded from the API response even when visible in the portal |
| Webroot | Default filter shows devices seen in the last 24 hours; older devices are excluded but you may still be billed for them |
| NinjaOne | Decommissioned but not deleted devices may not appear in counts |
| Microsoft 365 | License assignments vs activations can differ — Gradient receives assignments |
| SaaS Alerts | Counts reflect monitored users, not all users in the tenant |
| Auvik | Average billable device counts can differ from current device counts |
5. Multi-mapping aggregation
If two vendors both contribute to the same PSA service (for example, you sell the same security product through both Pax8 and direct), Gradient will aggregate their counts. This is correct behaviour, but if you are not expecting it, the total can look high.
- Open the service card
- Click Details under Data Source
- Look at how many vendors are contributing
- If you have an unexpected contributor, the aggregation is the cause of the discrepancy
If a service is multi-mapped, the Detect New Revenue toggle is disabled automatically. This is by design — generating NFR cards on aggregated counts would create false positives.
Step 3: Common drift patterns
Some discrepancies follow predictable patterns. If your situation matches one of these, you can skip the diagnostic and go straight to the fix.
| Pattern | Likely cause | Fix |
|---|---|---|
| Counts off by a small consistent amount | Inactive accounts in the vendor portal that you still bill for | Decide whether to bill them. If yes, reconcile to PSA; if no, deactivate in vendor |
| Counts off by exactly one license | Internal admin account or service user not being counted | Adjust manually during reconciliation |
| Counts dropped sharply between months | Vendor renamed or consolidated a SKU | Re-map to the new SKU |
| Counts climbed sharply between months | New mapping added, or vendor changed how they count | Verify mapping is still 1:1; check vendor release notes |
| Count shows zero on a customer you know is using the product | Account mapping missing, or vendor has them in an inactive state | Map the account or activate in vendor |
| One specific service is always wrong, others are fine | Service mapping points to the wrong SKU variant | Re-check service mapping for that service |
Step 4: If the counts are right but you still see a card
If counts are correct but a service card is showing as needing reconciliation, that is often a deliberate signal:
| Card type | What it means | What to do |
|---|---|---|
| Reconcile card | PSA and vendor counts disagree | Action: choose Approve, Reconcile, or No Change |
| New Found Revenue card | Vendor data exists for a customer or service not yet billed in PSA | Add the line item to PSA, or dismiss if intentional |
| No Change card | Counts match — service card is shown as confirmation | Click Approve to clear it from the dashboard |
Still stuck? What to send support
Email support@meetgradient.com with:
- Customer name and service name
- Which count is wrong (PSA, Vendor, or both)
- The expected value, the value you see in Gradient, and the value you see in the source
- Whether you have run a Full PSA Sync and a Quick Sync recently
- A screenshot of the service card with Review expanded
Related articles