Troubleshooting
A symptom-driven reference for common dashboard issues. Find the symptom that matches what you're seeing, then read whether to wait, act, or escalate.
Scan the headings for your symptom. Each entry tells you what's happening and what to do.
If a cost number looks materially wrong on a job, don't take action based on it until you've verified. Check the refresh tier (numbers can be up to 4 hours behind), look at the same number in two places, or ping Jared McKenzie before doing anything that depends on the figure being right.
Sign-in and access
"I can't sign in — it says unauthorized domain"
What you're seeing: After picking a Google account on the login screen, you get an "unauthorized domain" error.
What's happening: Your Google account isn't on one of the five approved PSS domains.
What to do:
- If you have a PSS work email (
@precisionsiteservices.com,@reconsiteworks.com,@sitedrywall.com,@precisionsiteworks.com, or@sitereconstruction.com), sign out of your personal Google account and sign in with the work account. - If you don't have a PSS work email yet, ping Jared McKenzie or your admin.
See Signing In.
"I signed in but I don't see any of my jobs under My Jobs"
What you're seeing: All Jobs is empty (or close to it) when My Jobs is on.
What's happening: One of three things — and the first one is by far the most common.
- Some of your jobs have your first name in the PM field instead of your user account. The My Jobs filter matches on user account, not on name, so those jobs don't show up.
- You're set up as a Viewer, not a PM. Viewers don't have a My Jobs toggle.
- All your jobs are closed and the active/closed filter is set to active only.
What to do:
- Toggle My Jobs off. If your jobs appear in the wider view, you've hit the first-name issue. Find them by name or job number for now and ping Jared McKenzie to fix the PM-field data.
- If My Jobs doesn't appear as a toggle at all, you're a Viewer. Ping Jared or the team that manages the PM directory.
- If your jobs are mostly old, include closed jobs in the filter and re-check.
See My Jobs vs. All Jobs.
"I can see jobs from other companies. Is that a bug?"
What you're seeing: All Jobs shows jobs from multiple PSS operating companies, not just yours.
What's happening: Expected. There is no per-company access control — everyone signed in sees every job across all 8 companies. The My Jobs toggle is the only scoping mechanism.
What to do: Nothing. If you want to narrow the view, use company filter chips in the filter bar. See Companies and Access.
Data freshness and lag
"I just entered a budget but it's not showing in Budget vs. Actual"
What you're seeing: Budget Entry shows your numbers, but Budget vs. Actual on the same tab doesn't.
What's happening: Budget Entry saves to source immediately. Budget vs. Actual reads from rollup tables that refresh every 4 hours. Different speeds, same form.
What to do: Wait up to 4 hours and check again. If it still doesn't show up after that, the refresh job may have failed — escalate.
See Data Refresh Rates.
"A new PO from yesterday isn't showing on the job"
What you're seeing: You know accounting created a PO yesterday but the PO Detail table doesn't show it.
What's happening: PO source data syncs nightly. New POs appear in the dashboard the morning after they're created.
What to do: Check after the next nightly refresh (typically by morning). If the PO still isn't there 24 hours after creation, escalate.
"The dashboard numbers don't match the PM Sheet numbers"
What you're seeing: A total in the dashboard differs from the same total calculated from the PM Sheet.
What's happening: Usually one of three things.
- Refresh lag — the dashboard is up to 4 hours behind. The PM Sheet, if you just updated it, is current.
- Category split differences — the 9 PM Sheet budget categories split and combine from the 7 PO-side categories, and a single mis-mapped cost code can shift a line between buckets. See Categories.
- Change Orders — if the PM Sheet is showing the adjusted total (with COs) and the dashboard is showing the original (without), the gap is the CO impact. See Change Order Terms.
What to do: Wait 4 hours and re-check. If the mismatch persists, write down the specific numbers and the job number, then ping Jared McKenzie.
PO and cost code issues
"A PO has no cost code — what do I do?"
What you're seeing: A PO line or labor entry shows a dash or empty Cost Code column.
What's happening: The cost code wasn't set when the line was created — either the uploader forgot or the system couldn't auto-assign one. The line is now in the Action Queue under Missing Cost Codes.
What to do: Open Action Queue → Missing Cost Codes, find the line, and assign a code from the picker.
See Fixing a Missing Cost Code.
"All my pump costs are $0. Is that a bug?"
What you're seeing: Pump-category cards, charts, or rows all show $0.
What's happening: Expected. Pump costs are never populated in source data — this is a known gap in the upstream pipeline, not a dashboard bug.
What to do: Nothing in the dashboard. If pump tracking matters for a particular job, track it outside JCI until the upstream pipeline is fixed.
See Categories.
"I confirmed a PO but it's still red"
What you're seeing: You clicked Confirm on a PO but the row still shows Pending PM (red) in the list.
What's happening: Most often the list you're looking at hasn't refreshed yet. Less often, the save itself didn't go through.
What to do:
- Reload the page (
Ctrl+R/Cmd+R). If the status is now amber, you're done. - If it's still red after a reload, try confirming again. If the second attempt also doesn't stick, escalate — it's likely a save error.
Search and navigation
"Search returns nothing"
What you're seeing: You typed a job number or name into the search box and got zero results.
What's happening: Usually one of three things.
- The job is closed and your active/closed filter is set to active only.
- There's a typo in the search term.
- The job was created today and the metadata is on the nightly refresh tier — new jobs appear the next morning.
What to do:
- If you searched by name, try the full job number, or vice versa.
- Check the active/closed filter.
- If the job was created today, try again after the next nightly refresh.
See Global Search.
"A deep link I got from a colleague doesn't open the same view"
What you're seeing: You clicked a link a colleague sent but the filters or tab don't match what they described.
What's happening: Deep links encode the job and tab and most filters, but some session state (such as drill-down chips that reset on navigation) isn't part of the URL.
What to do: If the link opens the right job and tab but the filters look different, re-apply them manually. If the link opens a totally different job, the URL may be outdated — ask your colleague for a fresh link.
Page and widget issues
"A widget is blank or shows a loading spinner forever"
What you're seeing: A widget loads indefinitely, or shows an empty state.
What's happening: Usually one of two things.
- The underlying rollup hasn't finished for the current period (most likely if you just opened the page right after a refresh window).
- The widget's filter scope has no matching data — for example, you've drilled down to a single job that has no rows for what the widget is plotting.
What to do:
- Remove any filters and try again.
- Refresh the page after the next 4-hour rollup cycle.
- If it's still broken after a full cycle, escalate.
"Widgets aren't in the order I pinned them"
What you're seeing: You pinned a widget layout, but it doesn't seem to be holding.
What's happening: Widget pinning persists to your account, so the layout itself should hold across sessions. But some related state — like drill-down filter chips — resets when you leave and come back. The layout should hold; the chip state may not.
What to do: If the layout itself is genuinely not persisting (not just chips resetting), it's a bug — escalate.
Mobile and responsive
"The dashboard looks broken on my phone"
What you're seeing: Tables overflow, widgets stack awkwardly, or tabs are hard to find.
What's happening: JCI is optimized for tablet and desktop. The phone layout is functional but isn't the primary target.
What to do: Use a tablet or desktop when possible. If you have to use a phone, the bottom nav (hamburger menu) is the fastest way to move between main pages.
See Mobile Behavior.
Escalation
When to ping Jared McKenzie
Escalate when one of the following happens and the entries above haven't resolved it:
- Any save that silently failed (PO confirm, cost code assignment, budget entry) and didn't stick after a reload and retry
- Numbers that look materially wrong and aren't explained by refresh lag or any of the quirks on this page
- A widget still broken after a full 4-hour refresh cycle
- Jobs that won't appear under My Jobs even after ~24 hours of refreshes
When you escalate, include:
- Your Google email
- The job number(s) involved
- The specific value you see versus what you expected
- The approximate time you tried the action
That's enough context to start a quick diagnosis without going back and forth.
Related pages
- FAQ — quick-hit questions
- Data Refresh Rates — the source of most "stale numbers" cases
- PO Lifecycle Colors — for color-confusion cases
- Job Status — for "this job says closed but it's not" cases
- My Jobs vs. All Jobs — the first-name-jobs issue
- Missing Cost Codes (Action Queue) and Fixing a Missing Cost Code
- Confirming a PO