For ELD & logistics QA teams

Quality control for your log editing & communications, end to end.

Log a check, the operator gets a Telegram alert, disputes are resolved in a live chat, and every error rolls up into analytics. One workspace for the whole QA cycle — with zero servers and zero hosting bill.

2K+
Checks handled per day
20+
QA / QC managers
200+
Operators tracked
$0
Cost to run
Built to scale comfortably within Google Workspace's standard quotas — no servers, no per-seat fees.
Everything in one place

One workspace for the whole QA cycle

Each module below is a real screen in the dashboard — no add-ons and no per-seat upsells.

Live Dashboard

Today's checks, accepted vs. disputed vs. pending, and per-manager & per-operator activity at a glance.

Bulk Check Entry

Log dozens of checks at once, paste screenshots into rows, or import an Excel file. Each manager has its own queue.

Telegram Alerts

Operators are notified instantly with the case, the mistake, and one-tap Fixed / Acknowledged / Dispute buttons.

Dispute Resolution

A full dispute lifecycle with a live operator ↔ QA chat, closed-or-canceled outcomes, and an audit trail.

DOT Investigations

Record negative DOT inspections, tag who's at fault, attach proofs, and auto-alert the operators involved.

Analytics & Trends

Error rates by operator, shift & office, Edit vs Comms breakdowns, month-over-month and weekly trends.

Leaderboard

Rank operators by error rate with shift & office filters and a one-click PDF export for reviews.

Roles & Users

Admin, Moderator and QA Manager roles with hashed-password login and built-in user management.

The whole day, the second you log in

A single backend call builds the dashboard — today's KPIs plus the full month of activity — so it stays fast even under heavy daily volume.

  • Today's KPIs — total checks, accepted, disputed and pending, color-coded.
  • QA Manager activity — total, this month, this week and today, side by side.
  • Operator status with a live error-rate badge, searchable and filtered by Morning / Day / Night shift.
  • Filter by office to slice the whole view per location.
qaqc-dashboard.app/dashboard
Total Checks
487
today
Accepted
441
responded
Disputed
12
in review
Pending
34
no response

QA Manager Activity

8
ManagerTotalMonthWeekToday
Mark Reynolds3,14061214892
Laura Bennett2,70554812176
Steven Parker2,48850311061
Olivia Hayes2,1144479652

Operator Status · This Month

212
Ryan Cole
Night · 318 checks
1.6%
Emily Carter
Day · 271 checks
3.2%
Megan Ross
Morning · 244 checks
9.1%

Shift Checks · This Week

1.4K
Morning
1.1K
Day
0.9K
Night

Log a whole shift in one pass

The Bulk Check grid is built for speed — add rows, autocomplete operators, drop an Edit or Comms mistake into each, and submit them all in a queue that's yours alone.

  • Import from Excel or add rows by hand — whatever your week looks like.
  • Paste files into a row — screenshots, audio recordings or PDFs, the type is detected automatically.
  • Per-manager queue — your bulk submit never collides with a teammate's.
  • Live progress & retry — watch sent / pending / error counts and re-send only what failed.
qaqc-dashboard.app/bulk-check
Add row + 5 rows Import Excel Clear all On Shift 2 sent1 pending0 error Submit all
OperatorCompanyDriverRequestEditCommsFilesStatus
Ryan ColeSunbelt CarriersM. SullivanNew shift PTIWrong statusSent
Emily CarterRoadLinkT. BrooksBreak checkNo callbackSent
Megan RossPrimeFreightD. FosterHOS reviewMissing breakPending
Operator…Company…Driver…Request…
Click a row, then Ctrl+V to paste a file straight into it. Click a thumbnail to annotate it.

Mark up screenshots without leaving the dashboard

Click any attached image and a built-in editor opens — circle the mistake, draw an arrow, point right at it, then save. The annotated version is what the operator receives.

  • Pencil tool with red / yellow / green / blue / black presets and a custom color picker.
  • Adjustable brush size, Undo and Clear — fix a stroke without starting over.
  • Zoom & sharp-pixel mode to annotate tiny details in a log precisely.
  • Save in place — the marked-up image replaces the original on the check.
qaqc-dashboard.app · image editor
Pencil Size Undo Clear 100%+Sharp Cancel Save
Where operators actually are

The notification flow lives in Telegram

The moment a check is logged, the operator gets the case in their own chat — with the file attached and the buttons to respond. No new app to install.

A case, a tap, a resolution

Every check generates an atomic Case ID (A001 → Z999) and a message the operator can act on in one tap.

  • One-tap response — Fixed & Acknowledged, or Acknowledged, plus Ask / Dispute.
  • Images, audio & PDF ride along with the message — file type detected from the bytes, not the name.
  • "Pay attention" notices — non-critical issues that don't count against the operator's stats.
  • Self-serve commands — operators run /mystats and /mytrend to get their own charts.
QA / QC Bot
bot
Today
⚠️ NEW ERROR — Case A287
Operator: Ryan Cole
Company: Sunbelt Carriers
Driver: M. Sullivan
Request: New shift PTI
Mistake: Wrong duty status
Dept: Edit
✅ Fixed & Acknowledged
❓ Ask a question | Dispute
14:32
📋 PAY ATTENTION — Case A288
Notice: Late note entry
Not a critical error — doesn't affect your stats, just stay mindful.
14:33
Fair by design

Disputes get a real conversation

When an operator pushes back, a QA manager accepts the case and a live chat opens between them — relayed through the admin group. Every case ends as Closed (error stands) or Canceled (error removed and the check marked clean).

qaqc-dashboard.app/disputes
Pending Review

Operator opens a dispute — the request lands in the admin group.

In Dispute

A manager accepts and a live chat opens, both sides relayed.

Closed

Error stands — the record is unchanged, operator notified.

Canceled

Error removed, check flipped to clean, original preserved.

QA / QC Admin Group
5 managers online
🟡 DISPUTE REQUEST — Case A287
Operator: Ryan Cole
Error: Wrong duty status
Operator is waiting. Press below to start chat.
💬 Accept & Start Chat
Laura Bennett accepted Case A287
⚖️ Resolution Required — Case A287
✅ Closed — Error stands
❌ Canceled — Error removed

Resolve from chat or from the dashboard

Managers can close a case right inside Telegram, or open the Disputes page to filter Active / Pending / Resolved and act there. Both paths write the same audit trail.

  • One active dispute per operator — duplicates are blocked automatically.
  • Canceling restores cleanly — the original mistake is preserved, the check becomes "Clean".
  • Both sides notified automatically when the case is decided.

DOT investigations, fully documented

Log a negative DOT inspection, attribute fault with rich badges, attach the inspection picture and your proofs — and the operators involved get an automatic heads-up in Telegram.

  • Guilty attribution — Driver, one or more Operators, DataQ, Other, or None — combined in a single record.
  • Auto-alerts notify each tagged operator to tighten up compliance.
  • Analysis on the real DOT date — not the day you logged it.
qaqc-dashboard.app/investigation
Motive
04/28/2026
Sunbelt Carriers
M. Sullivan
Operator: Ryan Cole × Operator: Brandon Hayes × Driver × Other: Late upload × + DataQ + None
inspection.jpg
log_export.pdf
Submit investigation
Numbers that lead to action

Analytics, leaderboards & trends

Slice performance by operator, shift or office across any date range. Edit and Comms are tracked separately so you always know where the errors actually are.

2,140
total checks
4.8%

Overall

Apr 1 – Apr 30, 2026
CleanErrors
1,380
edit
3.6%

Edit

Log editing checks
CleanErrors
760
comms
6.9%

Comms

Driver communications
CleanErrors

Rank, compare, and prove it

A leaderboard ranks operators by error rate with shift and office filters, and exports to PDF for one-on-ones.

  • Month-over-month compare — total, Edit and Comms rates across the months you pick.
  • Weekly trend lines — spot whether an operator or shift is improving or slipping.
  • PDF export on leaderboard, analytics and DOT analysis — ready for review meetings.
qaqc-dashboard.app/leaderboard
Operator Leaderboard
Ranked by error rate · lowest first
Export PDF
#OperatorShiftChecksErrorsRate
1Ryan ColeNight31851.6%
2Emily CarterDay27193.2%
3Chris WalkerDay256135.1%
4Daniel PriceNight249166.4%
5Megan RossMorning244229.1%

Trends that read at a glance

Weekly error-rate and volume on one chart, plus a ranked list of the most frequent mistakes so coaching targets pick themselves.

  • Frequent mistakes ranked and split by Edit vs Comms.
  • Overall, by shift, or by single operator — same view, any scope.
qaqc-dashboard.app/trends

Weekly Error Rate · last 8 weeks

Error rate %Checksimproving

Most frequent mistakes

Wrong duty status41
No callback28
Missing break19
Late upload11
Inspections under the microscope

DOT Analysis

Investigation statistics and a guilty breakdown across any date range — so you can see exactly where negative inspections come from.

qaqc-dashboard.app/dot-analysis
Total
38
Driver
14
Operator
16
DataQ
5
Other
9

Guilty Breakdown

38
cases
Operator · 16 Driver · 14 Other · 9 DataQ · 5 None · 4

Investigation Trend

Investigations per month (Jan – Jun)

Top Guilty Operators

Brandon Hayes7
Ryan Cole4
Chris Walker3

Top Guilty Other

Late upload5
System glitch3
Weather delay1
Right access, right people

Three roles, clean boundaries

Hashed-password login and a built-in user manager. Every role sees exactly what it should — here's who can reach what.

Access

QA Manager

Day-to-day reviewers

Moderator

Team leads

Admin

Full control
Dashboard & Bulk Check
Disputes & DOT logging
Leaderboard & Analytics
Compare, Trends & DOT Analysis
User Management
$0

Runs on Google. Costs you nothing to host.

The dashboard is a Google Apps Script web app backed by your own Google Sheets and Drive. No servers to rent, no database to maintain, no monthly hosting bill — it lives inside the Google account you already have.

Google Apps ScriptV8 backend, serverless
Backend
Google SheetsYour live database, auto-archived
Data
Google DriveScreenshots, audio & PDFs
Files
Telegram Bot APIAlerts, disputes & charts
Comms
Chart.js + QuickChartIn-app and Telegram-delivered charts
Charts
How it works

From a logged check to a closed loop

Log the check

A QA manager records a check — single or bulk — with the mistake, a comment and any file.

Operator is alerted

An instant Telegram message lands with the case, the file and one-tap response buttons.

Respond or dispute

The operator confirms, or opens a live dispute chat that a manager resolves fairly.

It rolls up

Every outcome flows into dashboards, leaderboards and trends — automatically.

Bring this QA system to your company

Proven in production and ready to adapt to how your team works. Message me on Telegram and let's set up a walkthrough with your real data.