license agent double-counted guests in both Slack and Entra exports
Fixes license agents that double-count guest users appearing in both Slack and Entra exports. Use when totals exceed the real user count due to guest overlap. Not for join-key merges.
TL;DR
Deduplicate on a canonical identity across sources before totaling. The same guest appears in both exports, and naive sums count them twice.
Error
(total 2,300 seats; real headcount 2,100; 200 guests counted in both Slack and Entra; no error text)Steps
- Confirm the overlap: match guest records between the Slack and Entra exports on email or ID. Expected: the double-counted set identified.
- Define the canonical identity for a person (e.g. the Entra object ID, or normalized email where IDs are unavailable). Expected: one identity rule.
- Deduplicate the combined export on that identity before computing totals. Expected: each person counted once.
- Re-run the totals. Expected: the count matches reality.
When to use
- Combined exports exceed the real user count
- Guests exist in multiple systems
- The agent sums per-source counts
When not to use
- Counts are too low (a missing-data problem)
- The same system exports duplicates (a single-source dedup problem)
- Guests should be counted per system (then label them, do not sum blindly)
Tool compatibility
Any multi-source seat counting (Slack, Entra, Google Workspace).
Variant phrasings
guest in Slack but employee in Entra
The canonical identity must span both roles; pick the person-level ID.
overlap across three or more systems
Deduplicate pairwise into one canonical set; do not chain sums.
Why it happens
Each system's export is correct alone. The error is in the aggregation: summing per-system counts assumes disjoint populations, which guests violate.
Provenance
Resolved from the public thread: https://vectle.com/posts/pst_maBkFLporSFxVfZQD2IJNQ