This section covers the six reasons your ServiceTitan reports do not match what you are actually making. Understanding this matters because every business decision you make -- staffing, marketing spend, tech performance -- is built on these numbers. If the numbers are wrong, the decisions built on them are wrong too.
The good news is this is not a revenue problem. The money is coming in. The problem is a visibility problem -- ServiceTitan only knows what it has been told, and right now six process gaps are preventing it from seeing the full picture. Some of these gaps are tech behavior issues. Some are platform limitations. Some are old data that was never cleaned up. All six are fixable, and we have a specific owner and timeline on every one.
Here is what is currently invisible and why it matters to you.
This section lists the six data gaps that are making our ServiceTitan reports wrong, in the order you should fix them. Each gap has a specific cause, a specific fix, and a reason it matters to the business. The pattern is always the same: techs cannot fill certain fields from their phone, so the office has to catch it during debrief or Robert's automation catches it overnight.
Start with stuck jobs (they have real money trapped) and work down the list. The daily items become part of your routine. The one-time items get done and stay done.
Each one follows the same pattern: here's the fix, here's the problem, here's why it matters, here's the full picture.
- Search and start cleaning stuck jobs -- revenue jobs first
- Debrief every completed job for invoice completeness
- Fill Sold-By on every completed job during EOD debrief
- Reclassify "General Plumbing" jobs after every call
- Check Sold tab and book return visits for all sold estimates
- Robert handles this via API -- no action needed
This section explains why the numbers you see in ServiceTitan reports do not match what your team is actually producing. The short version: the money is coming in, but the software cannot see it because of how certain fields work on the mobile app. Your team is doing the work -- the reports are just not capturing it correctly.
The fixes are already in progress. Ashton catches gaps daily, and Robert is building automation to catch the rest. Within two weeks, your reports will show the real picture.
1. Sold-By empty (78%) -- techs can't fill it on mobile, so nobody gets credit. Auto-fill runs nightly.
2. $0 invoices (61% of Service Direct) -- tech hits complete without adding the invoice. Debrief catches it now.
3. Wrong job type (40%) -- everything defaults to "General Plumbing." Can't see revenue by service. Office reclassifies daily.
4. $144K unbooked estimates -- customers said yes but nobody scheduled the return. Daily Sold tab check fixes this.
Better (THIS WEEK): Slack alerts flag problems in real-time -- catches ~90%
Best (2-3 WEEKS): Full API automation catches 99% and auto-fixes most gaps before anyone notices
This section covers what we learned from the April 7 call with Kassidy, our ServiceTitan representative. The call confirmed two important things: first, several of the data gaps you are seeing are platform limitations that no amount of training will fix -- the mobile app literally does not allow techs to fill certain fields. Second, there are specific workarounds for every one of those limitations.
The good news is we now have a clear path forward. We set up three new reports, a daily digest email, and notification triggers during the call. The remaining question is training format -- you need to decide between virtual (free) or in-person with Kathy (paid). Everything else is already in motion.
This section covers the practical takeaways from the Kassidy call -- what ServiceTitan physically cannot do, what workarounds exist, and what new tools you have starting today. The four platform limits are permanent (no setting or update will fix them), so the workarounds below are how we handle them going forward.
• Sold-By: Office fills during debrief + API auto-fill nightly
• $0 invoices: Debrief catches it + real-time Slack alert coming
• Job type: Office reclassifies + API auto-corrects by keyword
• Field completion: Position Agreement + compliance scorecard
• 3 New Reports: Stuck jobs, $0 invoices, Sold-By null. Run every morning.
• Daily Digest Email: Arrives at 7 AM with yesterday's incomplete jobs.
• Notification Triggers: ST notifies on job completed, estimate sold. Settings > Notifications.
• Multi-Day Installs: Book LAST day first, work backwards. Prevents scheduling conflicts.
- Run the 3 new reports daily (stuck jobs, $0 invoices, Sold-By null)
- Check 7 AM daily digest email every morning
- Set up notification triggers in Settings > Notifications
- Use last-day-first booking for multi-day installs
This section is the bottom line from the Kassidy call. The software has real limits that affect your reports, but every one of those limits has a workaround already in place or being built. Training will teach the techs the correct workflow, and the Position Agreement gives you a system for accountability that does not require constant supervision.
• Can't fix in ST: Sold-By on mobile, $0 invoices, job type from field, field completion enforcement
• Already fixed: Daily digest email at 7 AM, 3 new reports for daily checks
• Building now: Slack alerts for $0 jobs, auto-fill Sold-By via API, compliance scorecards
• Training: 1.5-hour session with Kassidy. Management first, then recorded for techs. Stephanie picks virtual (free) or in-person with Kathy (~35 min from Freeman MO, charges time + mileage).
This section shows you how the daily operations process works -- what Ashton does every day to catch data gaps before they pile up. Before this system, nobody was checking for missing invoices, blank Sold-By fields, or stuck jobs on a regular basis. Problems would accumulate silently for weeks and only surface when your month-end P&L looked wrong.
The good news is Ashton now has a structured routine: morning check at 7 AM, all-day debrief on every completed job, and an end-of-day close-out. You will receive a weekly summary showing how many gaps were caught and how much revenue was recovered. You should not need to think about this day-to-day -- the system runs itself and only alerts you if something needs your attention.
• 7 AM: Daily digest email arrives with yesterday's gaps -- Ashton reviews and acts
• All day: Every completed job gets debriefed: invoice, Sold-By, job type, photos
• End of day: 3 checks run: stuck jobs, $0 invoices, missing Sold-By
• Weekly: Compliance report to you -- tech scorecard + dollars recovered
This section is your daily playbook -- the exact routine that catches data gaps before they compound. It is broken into four time blocks: morning check (30 minutes), during-the-day tasks (ongoing), end-of-day close-out (30 minutes), and weekly cleanup. Following this routine is what makes the difference between accurate weekly reports and month-old surprises.
-
๐ง Check daily digest email -- Arrives at 7 AM. Lists yesterday's incomplete jobs, $0 invoices, missing Sold-By.
-
๐ฑ Review dispatch board -- Any jobs from yesterday still showing? They should all be gray (completed). If not, investigate.
-
๐ฌ Check Slack alerts -- #bsp-ops channel shows overnight alerts: stuck jobs, $0 invoices, unsold estimates aging.
-
๐ Review today's schedule -- Any multi-day installs? Any return visits from sold estimates? Confirm everything is dispatched.
-
๐ Book multi-day installs LAST DAY FIRST
Kassidy confirmed: book the final day, then work backwards. This prevents overlapping schedules. -
โ๏ธ "Do Work Now" vs "Do Work Later"
"Do Work Now" = tech goes to the job today. "Do Work Later" = estimate only, schedule return visit. Choose correctly. -
๐ฐ Book ALL sold estimate items into return visits
When a tech sells work, IMMEDIATELY book the return visit. Don't let it sit in the Sold tab. Every day it sits = money at risk. -
๐ Debrief every completed job
Before moving to next job: Does it have an invoice with line items? Is Sold-By filled? Work performed summary? Photos? Equipment info? Payment collected or plan noted? -
๐ท๏ธ Reclassify "General Plumbing" jobs
After every call, check the job type. If it says "General Plumbing" -- change it to the correct type: Drain Cleaning, Water Heater, Sewer, etc.
-
โ All dispatch board jobs should be gray -- If any are still colored (in-progress), find out why and resolve.
-
๐ Run Sold-By null check -- Reports > [Sold-By Null Report]. Fill in every blank from today's completed jobs.
-
๐ต Run $0 invoice check -- Reports > [Zero Invoice Report]. Any job completed today with $0? Call the tech or fix the invoice.
-
๐ Close any remaining open invoices -- Nothing should carry over to tomorrow unless it's a multi-day job.
-
๐ฏ Check Sold tab -- Any new sold estimates from today? Book the return visits now.
-
๐ Run stuck jobs search -- Status = "Scheduled" + Date < Today. Resolve each one: complete, cancel, or reschedule.
-
๐ฐ Review Sold tab for unbooked estimates -- Sort by age. Anything older than 7 days needs a follow-up call.
-
๐ Tech compliance scorecard review -- Which techs have the most $0 invoices? Most missing Sold-By? Address with Position Agreement.
-
๐จ Report to Stephanie -- Number of gaps caught, dollars recovered, compliance trend. Keep it to 3 bullets.
This section explains the daily system Ashton runs so you do not have to manage it yourself. The routine catches missing invoices, blank sales credit, and wrong job types the same day they happen. You will get a weekly scorecard showing tech compliance and dollars recovered, so you can see the system is working without being involved in the daily details.
• 7 AM: Reviews digest email + dispatch board. Catches yesterday's gaps.
• All Day: Debriefs every completed job. No more $0 invoices or missing Sold-By.
• End of Day: Clears board, runs 3 checks. Clean data for your reports.
• Weekly: Stuck job cleanup + scorecard. Tech compliance % + dollars recovered.
This section covers the one-time cleanup of 200 old jobs that are stuck in ServiceTitan. These are jobs from months ago that were never properly completed or cancelled -- they just sit there making every report you pull less accurate. Think of it like a closet full of old files that need to be sorted: some have real money attached, most are just noise.
The good news is this is a one-time project, not an ongoing burden. Once Ashton works through the list, these 200 jobs stop polluting your data. The daily routine (Section 3) prevents new ones from piling up again. The most important finding: at least $34K in real, completed revenue is trapped in these stuck jobs and will show up on your P&L once they are properly closed out.
• Priority 1: 11 jobs with real revenue ($34K+ to recover) -- do first
• Priority 2: 92+ $0 scheduled jobs -- cancel with notes (noise removal)
• Priority 3: 53 in-progress with money -- verify with techs then complete
• Priority 4: ~20 legacy imports -- cross-reference QuickBooks
• Priority 5: ~25 old estimates from 2025 -- delete/dismiss (stale)
• Priority 6: 29 recent items (Jan 2026+) -- follow up with customers
This section is your cleanup checklist for the 200 stuck jobs. They are organized into six priority tiers so you work on the most valuable ones first. Revenue jobs go first because they put real money on the books. Dead jobs go second because they are noise removal. Legacy and old estimates go last. Each tier has step-by-step instructions so you know exactly what to do with each job.
-
Search: Status = "Scheduled" + Date < Today + Total > $0.01
-
Open each job. Verify the work was actually done (check with tech if needed).
-
If work was done: complete the job properly (invoice, payment, Sold-By).
-
If work was NOT done: reschedule or cancel with notes.
-
The $34K job -- handle this one carefully. Verify with Kalen before closing.
-
Search: Status = "Scheduled" + Date < Today + Total = $0
-
Most of these are estimate-only visits or missed appointments. Cancel with a note explaining why.
-
For any that were real jobs: check if the customer was served. If yes, add the invoice, then complete.
-
Search: Status = "In Progress" + Total > $0
-
These are jobs where work started but was never completed in ST. Verify with techs, then complete properly.
-
Cross-reference with QuickBooks to see if these were already invoiced outside ST.
-
If already in QB: cancel in ST with note "Invoiced in QB prior to ST migration."
-
Old sold estimates from before BSP was fully using ST. These are stale.
-
Delete or dismiss. They're polluting the Sold tab and making it hard to find real estimates.
-
These are recent enough to be real. Fix properly: correct job type, add Sold-By, complete invoice.
-
Follow up with customers if estimates are still valid. Book return visits for any that want to proceed.
Jobs > Search > Status = "Scheduled" + Completed Date < Today + Invoice Total > $0.01
These jobs haven't been exported to QB. Just complete or cancel them directly.
Use "Write Off" payment type. This handles tax correctly. No adjustment invoice needed.
Book the job > Delete all line items > Cancel. This gives sales credit without creating revenue.
This section is about the 200 old jobs clogging your ServiceTitan data. Ashton is cleaning them up in priority order. The biggest takeaway for you: at least $34K in real revenue is trapped in these stuck jobs and will appear on your books once they are properly completed. After the cleanup, your reports will be significantly more accurate.
• Priority 1 (DO FIRST): 11 jobs with revenue -- $34K+ to recover
• Priority 2: 92+ $0 scheduled jobs -- noise removal, cancel with notes
• Priority 3: 53 in-progress with money -- verify then complete
• Priority 4: ~20 legacy imports -- cross-reference QuickBooks
• Priority 5: ~25 old estimates (2025) -- delete/dismiss
• Priority 6: 29 recent (Jan 2026+) -- follow up with customers
This section covers the accountability system for your technicians. Right now there are no consequences for skipping fields and no rewards for doing it right, so compliance is inconsistent. The Position Agreement framework (recommended by Kassidy) changes that by creating a clear trade: techs who follow the process earn autonomy, full commissions, and bonus eligibility. Techs who do not follow the process lose privileges until they comply.
This matters because every skipped field is revenue you cannot see. The compliance scorecard will give you a weekly number for each tech so you know exactly who is costing you data and who is earning trust. The system enforces itself -- no yelling, no micromanaging, just clear consequences tied to clear expectations. It costs nothing to implement. It is just a process change.
This section covers the Position Agreement framework and the job debrief checklist. The Position Agreement is how you enforce compliance without being the bad guy -- the system handles the rewards and restrictions automatically based on each tech's weekly score. The debrief checklist is the single most important daily process: it is the 60-second check on every completed job that prevents the majority of data gaps.
✅ DO IT RIGHT -- Tech Gets:
- See multiple jobs at a time on their board
- Self-dispatch (pick their own route)
- Full commission in payroll, no delays
- Considered for leadership opportunities
- Bonus eligibility
- Trust and autonomy in the field
❌ DON'T DO IT RIGHT -- Tech Gets:
- See only one job at a time
- Lose self-dispatch (call office for every job)
- Commissions held or delayed
- Pulled from bonus opportunity
- More oversight and check-ins
- Written warning after pattern of non-compliance
-
๐ง Equipment info entered? -- Model, serial, age. Critical for warranty and future service.
-
๐ Work performed summary filled? -- What was actually done. Not just "plumbing repair."
-
๐ณ Payment collected or plan noted? -- Invoice has line items with real dollar amounts. Not $0.
-
๐ Follow-up / additional appointment needed? -- If yes, book it NOW. Don't let it sit in Sold tab.
-
๐ธ Photos taken? -- Before, during, after. Minimum 3 per job.
-
๐ท๏ธ Sold-By filled? -- Tech can't do this on mobile. YOU fill it based on who was on the job.
This section covers the accountability system for your techs. The Position Agreement gives you a proven framework from top plumbing shops: techs who follow the process get autonomy and full compensation, techs who do not get restricted until they comply. Your presence at the training session matters because the techs need to see that leadership backs this system. Once the compliance scorecard is live, you will have weekly numbers showing exactly who is following the process and who is not.
1. Equipment info -- warranty tracking, upsell data
2. Work summary -- know what was actually done
3. Payment / invoice -- revenue shows in reports
4. Follow-up booked -- don't lose sold work
5. Photos -- proof of work, liability protection
6. Sold-By -- know who's actually selling
Each tech scored weekly. Your presence at the training session matters because techs need to see leadership backs this.
This section explains the automation Robert is building to catch data gaps 24/7. Think of Ashton's daily routine as the first line of defense -- she catches about 70% of problems during business hours. The automation is the safety net underneath: it runs overnight, on weekends, and on busy days when manual checks get rushed. Together, they catch 99% of gaps.
The good news is all of this runs on infrastructure Robert already has -- no new software costs, no monthly subscriptions. The 9 automations protect the $344K+ in revenue that was previously invisible. Four API endpoints are already tested and confirmed working, so this is not theoretical. The build takes about 30 hours total, and the most critical pieces (zero-dollar invoice detection, Sold-By auto-fill, daily digest) are being built this week.
Building now (this week):
• ๐จ Zero-Dollar Invoice Detector: Catches $0 jobs instantly -- no more phantom revenue
• ๐ Daily Digest 2.0: Color-coded Slack report by tech, every morning
• ๐ค Sold-By Auto-Filler: Auto-fills missing sales attribution every night
Planned (next 2-3 weeks):
• ๐ท๏ธ Job Type Auto-Corrector: Fixes "General Plumbing" to correct category
• โฐ Estimate Follow-Up Alerter: Flags aging estimates before customers go cold
• ๐ด Stuck Job Alert: Daily alert for jobs stuck in scheduling limbo
• ๐ฏ Lead Source Tagger: Tracks which marketing channel brought each customer
• ๐ธ Bad Debt Tracker: Tracks write-offs and unpaid invoices
• ๐ Debrief Scorecard: Compliance % per tech, updated daily
This section covers the technical foundation for the automation and what it means for your daily workflow. Four API endpoints have been tested and confirmed working -- this means the automations Robert is building are not guesswork, they are verified possible. Once live, you will receive Slack alerts instead of having to search for problems. Your daily routine drops from 30 minutes of searching to 5 minutes of acting on alerts.
This section covers the automation that will keep your data accurate going forward without requiring manual work from you or your team. Nine tools are being built that automatically catch the gaps techs leave behind -- missing invoices, blank sales credit, wrong job types. The timeline is simple: manual checks cover you now, Slack alerts go live this week, and full automation is complete in two to three weeks. After that, your reports will finally show the real numbers.
• ๐จ Zero-Dollar Detector (this week): Instant alert when a tech completes a job with no invoice
• ๐ค Sold-By Auto-Fill (this week): Every job gets sales attribution -- you'll see who's selling
• ๐ท๏ธ Job Type Corrector (next week): Revenue breakdowns by service type will be accurate
• ๐ Debrief Scorecard (2 weeks): Weekly report showing tech compliance %
• โฐ Estimate Alerter (2 weeks): No more sold work sitting unbooked
Timeline: Good (NOW) = manual checks ~70% | Better (THIS WEEK) = Slack alerts ~90% | Best (2-3 WEEKS) = full automation 99%
This section covers the training plan for your team. Right now, techs are completing jobs incorrectly because nobody formally taught them the right ServiceTitan workflow. Training reduces the number of gaps Ashton has to catch every day, which means faster progress toward accurate reports. It is a one-time investment of 1.5 hours that prevents hours of daily cleanup going forward.
There is one decision you need to make here: virtual training (free, via video call with Kassidy) or in-person training with Kathy (paid, she drives from Freeman MO, about 35 minutes, charges time plus mileage). Either way, the session gets recorded and becomes mandatory viewing for all 10 techs before next payroll. After training, the Position Agreement kicks in and compliance tracking begins.
• Option A -- Virtual (Free): 1.5-hour video call with Kassidy. Screen share + walkthrough. Recorded for techs. Schedule at your convenience.
• Option B -- In-Person (Paid): Kathy comes to your office from Freeman MO (~35 min). Charges time + mileage. Hands-on with your actual setup.
• After training: Recording becomes required viewing. Position Agreement kicks in. Techs who follow it get autonomy. Techs who don't get restricted.
This section covers the training rollout plan and what topics will be covered. Training is the foundation for the Position Agreement -- techs need to know the correct workflow before they can be held accountable for following it. The five-step rollout below takes you from Stephanie's decision on format all the way through to compliance tracking. The six training topics are targeted at the exact gaps that are costing money right now.
-
1๏ธโฃ Step 1: Stephanie confirms training option -- Virtual (free) or in-person with Kathy (paid, Freeman MO ~35 min)
-
2๏ธโฃ Step 2: Schedule 1.5-hour management session -- You, Kalen, Stephanie, Robert with Kassidy
-
3๏ธโฃ Step 3: Record the session -- This becomes the tech training video
-
4๏ธโฃ Step 4: Share recording with all 10 techs -- Required viewing before next payroll
-
5๏ธโฃ Step 5: Implement Position Agreement -- Use compliance scorecard to track who's following the training
| Topic | Why | Who Needs It Most |
|---|---|---|
| Proper job completion flow | Stop $0 invoices | All techs |
| Equipment entry | Warranty tracking + upsell | All techs |
| Photo documentation | Proof of work + liability | Techs with low photo counts |
| Estimate presentation | Good/Better/Best selling | Lower-performing techs |
| Multi-day install booking | Prevent scheduling conflicts | Office (you) |
| Debrief process | Catch all gaps at end of job | Office (you) |
This section explains your role in the training process. The 1.5-hour management session is where you, Stephanie, and Robert learn the correct ServiceTitan workflow from Kassidy. The recording then goes to all 10 techs as mandatory viewing. Your presence at the session matters because the Position Agreement only has teeth when the techs see that leadership is behind it. After training, compliance scorecards start tracking weekly performance.
This section lists your 10 active technicians and their upcoming compliance tracking. Right now you have no visibility into which techs are following the process and which are not -- you cannot see who leaves $0 invoices, who skips the Sold-By field, or who does not take photos. The weekly compliance scorecard will change that by giving you a concrete number for each tech every week.
This matters because the scorecard is the accountability lever that makes the Position Agreement work. High-compliance techs earn autonomy and bonuses. Low-compliance techs get restricted. Without the numbers, it is just a conversation. With the numbers, it is a system.
| Technician | Role | Compliance Tracking |
|---|---|---|
| Nick Chernioglo | Technician | COMING |
| Scott Gibson | Technician | COMING |
| Izac McDermott | Technician | COMING |
| Ricardo Castillo | Technician | COMING |
| Matthew Schneweis | Technician | COMING |
| Dan Chritton | Technician | COMING |
| Anthony Erickson | Technician | COMING |
| David Gallaher | Technician | COMING |
| Kalen Barker | Owner / Master Plumber | COMING |
| Admin | System Account | N/A |
This section documents all 10 tech IDs for reference. Robert's automation scripts use these IDs to auto-fill Sold-By, tag jobs, and generate compliance scorecards. You do not need to memorize them -- they are here so nobody has to look them up again when building or debugging the automation.
| Technician | ST Tech ID | Notes |
|---|---|---|
| Nick Chernioglo | 19699286 | |
| Scott Gibson | 56364618 | |
| Izac McDermott | 56972540 | |
| Ricardo Castillo | 57322879 | |
| Matthew Schneweis | 57802364 | |
| Dan Chritton | 57929980 | |
| Anthony Erickson | 58201476 | |
| David Gallaher | 58209916 | |
| Kalen Barker | 59401597 | Owner -- does not log into ST |
| Admin | 28914157 | System account |
This section shows your team roster and the compliance tracking that is coming. Once the scorecard is live in about two weeks, you will see a weekly score for each tech across six criteria: equipment info, work summary, invoice completion, follow-up booking, photos, and Sold-By. This turns gut feelings about who is doing the work right into concrete numbers you can act on.
| Technician | Compliance Score | Trend |
|---|---|---|
| Nick Chernioglo | PENDING | Scorecard building |
| Scott Gibson | PENDING | Scorecard building |
| Izac McDermott | PENDING | Scorecard building |
| Ricardo Castillo | PENDING | Scorecard building |
| Matthew Schneweis | PENDING | Scorecard building |
| Dan Chritton | PENDING | Scorecard building |
| Anthony Erickson | PENDING | Scorecard building |
| David Gallaher | PENDING | Scorecard building |
| Kalen Barker | N/A | Owner |
| Admin | N/A | System |