The badge reader logs an in-punch at 6:58 AM. The GPS from the mobile app shows the same employee two miles away at 7:04. Payroll cutoff is Friday. Somebody has to decide, by Thursday afternoon, whether those hours get paid, adjusted, or held — and whoever makes that call needs to be able to defend it three months later if it turns into a grievance or a wage claim.
That's the actual problem. Not "our data doesn't match." Two systems disagree, both are technically evidence, and the person doing the reconciliation usually has no consistent rule for which one wins. So they guess. And guessing is exactly what gets employers into trouble — because inconsistent decisions look like discrimination, and generous defaults look like an invitation to abuse.
This piece walks through a stepwise investigation protocol, an evidence scoring rubric, and the communication and payroll templates that let you resolve a badge GPS mismatch investigation without torching trust or creating a record that embarrasses you later.
Why the two signals disagree more than people expect
Before you can score evidence, you have to understand why badge and GPS drift apart in the first place. Most mismatches are not fraud. If you treat every one like theft, you'll burn goodwill fast and miss the actual patterns.
-
GPS drift and cold starts. A phone that's been in a pocket or a metal locker takes 20–90 seconds to get a real fix. The first coordinate it reports can be off by a few hundred meters, sometimes more indoors. So the "employee was elsewhere" reading is frequently just a stale or low-accuracy fix.
-
Badge tailgating and shared credentials. Someone holds the door, a coworker badges in for a friend, or a badge gets left at a station. The badge event is real; the person isn't.
-
Clock skew between systems. The badge controller's clock and the phone's clock aren't synced to the same time source. A 3–4 minute offset looks like a mismatch when it's actually two correct events measured against two slightly different clocks.
-
Geofence radius set too tight. A 50-meter geofence around a big warehouse or a multi-building campus will flag people who are legitimately on-site but standing on the far end of the property.
-
Offline capture reconciling late. When the mobile app loses signal and queues punches, the timestamp and location get written when connectivity returns, which can scramble the apparent order of events. If your field teams deal with this regularly, the mechanics are worth understanding on their own — we covered the reconciliation side in the offline-first capture and reconciliation playbook for field teams.
The practical takeaway: a raw mismatch tells you almost nothing until you know the accuracy of each signal. A GPS point with a 400-meter accuracy radius is not the same evidence as one with a 5-meter radius, even though both show up as a red flag on the exception report.
The evidence scoring rubric
The mistake most teams make is treating badge and GPS as equal, opposing votes. They're not equal, and their weight changes depending on metadata you already have but usually ignore — accuracy radius, clock source, whether the badge event was door-only or door-plus-PIN, and so on.
Accurate time tracking made effortless.
GoTimio empowers your team to log, monitor, and manage work hours seamlessly.
- Real-time time tracking
- Automated timesheet approvals
- Payroll and billing integration
No credit card required
| Signal | Low confidence (0–1) | Medium (2–3) | High confidence (4–5) |
|---|---|---|---|
| Badge event | Door-only reader, shared area, no anti-passback | Individual reader, no second factor | Reader + PIN or biometric, anti-passback enabled |
| GPS fix | Accuracy radius >200m, cold start, single point | Radius 50–200m, one supporting point | Radius <50m, multiple consistent points over 2+ minutes |
| Time alignment | Systems on different clocks, >5 min skew | Skew known but uncorrected | Both synced to NTP, skew <60s |
| Corroboration | None | One supporting record (schedule, task log) | Two+ independent records agree |
The rule that comes out of this: you don't act on the mismatch, you act on the higher-confidence signal — and only when the gap between the two scores is meaningful.
A concrete example: badge scores a 4 (individual reader + PIN), GPS scores a 1 (single cold-start point, 300m radius). The mismatch resolves in favor of the badge, and the case closes as a data-quality note, not an incident. Flip it — badge scores a 1 (shared door), GPS scores a 5 (tight radius, four consistent points showing the person a mile away for 20 minutes) — and now you have something worth a conversation.
When both signals score high and still disagree, that's your genuine investigation. In practice that's a small fraction of flags — often under 10% of what the exception report throws at you. The rubric's real job is filtering out the noise before anyone gets accused of anything.
The stepwise investigation protocol
Once a flag survives scoring, run it through the same sequence every time. Consistency is the whole defense. If you handle two similar cases differently, that difference is the first thing an attorney or a state investigator will point at.
Export the raw records rather than screenshotting dashboards so you retain timestamps and source-system metadata.
Teams that skip steps 2 and 4 end up interviewing employees about mismatches that were never real. Every one of those conversations costs credibility and makes people defensive the next time you have a legitimate question.
-
Freeze the raw records. Pull the badge log, the GPS points with accuracy metadata, the schedule, and any task or job records for a window of ±30 minutes around the disputed event. Export them; don't just screenshot a dashboard. You want the underlying data with timestamps and source system intact.
-
Reconcile the clocks first. Before anything else, confirm the time offset between the badge controller and the mobile source. A surprising number of mismatches evaporate here. Note the correction you applied.
-
Score both signals using the rubric. Write the scores down with the reason for each. This is the single most important artifact in the file.
-
Check for a benign explanation — offline queue, geofence edge, known drift zone, recent badge reassignment. Rule these in or out explicitly.
-
Look for corroboration that isn't badge or GPS
did they complete tasks, send messages, appear on a camera, get referenced in someone else's record? Independent evidence outweighs both primary signals.
-
Classify the outcome data-quality issue, single unexplained event, or pattern. A single unexplained high-confidence mismatch is a conversation. A pattern across weeks is a different track entirely.
-
Only now involve the employee — never before you've done the reconciliation. Walking in with a half-baked accusation is how you lose trust and, sometimes, the case.
Visualizing the sequence can help keep everyone consistent.
Teams that skip steps 2 and 4 end up interviewing employees about mismatches that were never real. Every one of those conversations costs credibility and makes people defensive the next time you have a legitimate question.
Communication scripts that don't presume guilt
Language matters more than most HR teams admit. "We noticed a discrepancy and want to understand what happened" gets you information. "Our system shows you weren't where you said you were" gets you a shutdown, sometimes a union rep, and a defensive employee who now remembers less.
Opening script (single unexplained event):
> "Hey — I'm reviewing time records for last week and one entry didn't line up cleanly between the badge system and the mobile app for [day, time]. That's usually a tech thing on our end, but I wanted to check with you directly before I finalize it. Do you remember anything about that morning — signal issues, badging in for the door, anything?"
That opener does three things: it signals the problem is probably systemic, it invites their account before any conclusion, and it documents that you gave them the chance to explain.
Follow-up when the explanation is plausible:
> "That makes sense — sounds like a GPS lag when you came in through the back. I'll note it as a data issue and correct the record. Thanks for clarifying."
Follow-up when a pattern exists:
> "I appreciate that. I want to be straight with you — this has come up a few times over the past few weeks, so I need to look into it more carefully rather than just adjust it. I'll document what we discussed today, and we'll follow the standard process from here."
The pattern conversation still doesn't accuse. It states the fact (frequency), names the next step, and keeps the record clean. For the fuller detection sequence when you suspect something more deliberate — including how to escalate without demotivating everyone around the person — the respectful detection workflow with scripts and progressive steps lays out the graduated approach.
Payroll resolution templates
Whatever you decide, the payroll record needs to show the decision, the basis, and who approved it. A bare adjusted number with no annotation is indefensible. Use a fixed resolution note attached to the timecard.
Template A — Resolved in favor of badge (GPS low confidence):
> Mismatch [ID]. Badge in 6:58, GPS point 7:04 @300m radius, cold start, single fix. Badge score 4, GPS score 1. Clock skew corrected (-2m). Resolved: badge time stands. Paid as recorded. Reviewer: [name]. Date: [date].
Template B — Corrected downward (GPS high confidence):
> Mismatch [ID]. Badge in 7:00 (shared door, no PIN, score 1). GPS shows 4 consistent points <30m radius, off-site 7:00–7:22 (score 5). Employee contacted [date], account recorded. Adjusted start to 7:22 per corroborated location. Reviewer: [name]. Approver: [name].
Template C — Held pending investigation:
> Mismatch [ID] flagged as part of pattern (see cases [IDs]). Hours entered as recorded pending review; no adjustment applied yet. Employee notified [date]. Escalated to [role] per policy. Do not finalize without approver sign-off.
Two rules that keep these defensible: never adjust hours without a written basis, and never hold pay silently. If you're holding, the employee should know and the record should say so. Silent holds are how a data question becomes a wage claim.
When this protocol makes sense — and when it's overkill
This is real work, and not every environment needs the full apparatus.
Run the full protocol when:
-
You have GPS and badge feeding the same timecard and they regularly disagree
-
You're in a jurisdiction with strict meal/break or off-the-clock exposure
-
You've had a grievance, audit, or wage claim in the last couple of years
-
Mismatches cluster around specific people, shifts, or locations
It's overkill when:
-
You have a single time source and GPS is informational only — then there's no conflict to resolve
-
Your team is small enough that the manager genuinely has direct line of sight
-
Mismatches are near-zero because your geofence and clocks are already well-tuned
One thing worth flagging: this protocol is specifically for resolving pay accurately. If the real goal is monitoring movement rather than reconciling a genuine data conflict, you'll create legal exposure and a trust problem that no template fixes. GPS earns its place here only as one weighted input into a fair decision — not as the primary source of truth.
A short real scenario
A regional facilities company — around 60 field techs across commercial sites — was getting roughly 40–50 badge/GPS mismatch flags a week after rolling out mobile punching alongside existing door badges. The office admin was manually reviewing each one and defaulting to "pay as badged" because she had no time to investigate, which meant genuine off-site starts were slipping through and the honest majority felt watched for nothing.
After introducing the scoring rubric and reconciling the clock skew (the badge controller was running about 3 minutes fast), the picture changed fairly quickly. Around 80% of flags turned out to be clock skew plus cold-start GPS — pure noise, closed as data-quality notes. Another chunk were geofence-edge cases at two large sites, fixed by widening the radius. What remained was a handful of genuine mismatches a week, each with a written score and a documented conversation.
Over the following two months, review time dropped from most of a day each week to under an hour. Payroll adjustments became rare and always annotated. The techs stopped treating the GPS as a surveillance tool because they saw flags getting resolved in their favor when the evidence supported it. Trust and defensibility, in this case, came from the same place — a consistent, written rule for which signal wins.
The through-line
A badge/GPS mismatch is not a verdict. It's two pieces of evidence of unequal quality, measured on possibly unsynced clocks, that need a consistent method to reconcile. The score-then-act discipline does three things at once — it filters out the enormous volume of noise, it keeps your decisions consistent enough to defend, and it protects the working relationship with people who did nothing wrong.
The teams that get this right aren't the ones with the fanciest tracking setup. They're the ones who write down why they decided what they decided, apply the same rubric to everyone, and never accuse before they've reconciled the clocks. Do that, and the mismatch stops being a payroll headache and becomes just another routine, documented decision.
A badge/GPS mismatch is not a verdict. It's two pieces of evidence of unequal quality, measured on possibly unsynced clocks, that need a consistent method to reconcile. The score-then-act discipline filters noise, keeps decisions defensible, and protects working relationships.
Ready to optimize your workforce time management?
Join 2,000+ companies using GoTimio to improve timesheet accuracy, reduce payroll errors, and boost team productivity.