JobTread has the data you need to run your business — active jobs, budgets, invoices, cost items, time entries. But out of the box, there's no single view that shows you pipeline value, gross profit percentage by job, revenue vs. goal, and AR outstanding all at once. That view has to be built.
This guide walks through exactly how to set up a live financial dashboard on top of JobTread — what data to connect, how to structure it, and what the end result actually looks like in practice.
What a JobTread financial dashboard should show
Before building anything, it helps to be clear on what you actually need to see. For most specialty contractors, the four metrics that matter most are:
- Pipeline value by status — what's pending approval, what's approved but not started, what's active. This tells you what's coming and when.
- Gross profit percentage by job — not the overall company GP%, but the per-job GP% updated in real time as costs come in. This is where you catch problems before they become losses.
- Revenue vs. annual goal — a simple progress bar. Are you on track to hit your number this year?
- AR outstanding — what's been invoiced but not collected, broken down by job and aging.
Everything else is secondary. If you can see these four things clearly, you can run your business. If you can't, you're flying blind no matter how good your estimating or crew management is.
The data sources: JobTread + QuickBooks
A complete financial dashboard for a specialty contractor needs data from two places:
JobTread gives you: job status, contract value (from approved customer orders), budget amounts by cost category, actual costs tracked against the budget, and invoice history.
QuickBooks gives you: actual payment receipts (what's been collected, not just invoiced), vendor bill payments that may not be in JobTread, and payroll data that affects job costs.
The GP% you see inside JobTread is only as accurate as the cost data entered there. If vendor bills are going into QuickBooks but not being reflected in JobTread, your job-level margins are overstated. A connected dashboard pulls from both sources simultaneously.
Step 1 — Set up your JobTread data correctly
Before connecting anything externally, your JobTread setup needs to be clean. Three things matter most:
Job statuses
Configure custom job statuses that reflect your actual pipeline stages — not just JobTread's defaults. For most painting and specialty contractors, something like: Lead → Estimate Sent → Approved → Scheduled → Active → Punch List → Invoiced → Closed works better than the generic options. Your dashboard pipeline view is only useful if the statuses mean something.
Budget structure
Every job should have a budget with cost items that match how you actually track costs — Labor, Materials, Subcontractors, Equipment. If your budget structure is inconsistent across jobs, your GP% comparisons won't be meaningful. Set up a budget template and use it on every job.
Cost capture workflow
Decide where costs get entered first — JobTread or QuickBooks — and be consistent. The cleanest approach: enter vendor bills in JobTread first (which syncs to QuickBooks), rather than entering in QuickBooks and trying to reconcile back. Time entries should always be logged in JobTread against specific jobs and cost categories.
Step 2 — Connect the JobTread API
JobTread has a well-documented JSON graph API that lets you query jobs, budgets, cost items, invoices, and financial data in a single request. To connect it:
- Go to your JobTread account settings and generate an API key under the developer/integrations section
- Store the key securely — treat it like a password
- Test the connection with a simple query to pull your active jobs
The API uses a graph query structure similar to GraphQL. You can request exactly the fields you need — job name, status, projected price, projected cost, actual cost — in a single call rather than multiple requests.
Step 3 — Connect the QuickBooks API
QuickBooks uses OAuth 2.0 for authentication. The setup process:
- Create a developer app at developer.intuit.com
- Get your client ID and client secret
- Go through the OAuth flow — the contractor (or you on their behalf) authorizes the connection from their QuickBooks account
- Store the access token and refresh token securely
Once connected, you can query invoices, payments, vendor bills, and journal entries. The payment data is what tells you what's actually been collected vs. just invoiced — critical for accurate AR tracking.
Step 4 — Build the dashboard layer
With both APIs connected, you need a backend that queries them on a schedule and a frontend that displays the results. The stack that works well for this:
- Backend: Serverless functions (Vercel works well) that query both APIs and calculate the derived metrics — GP%, revenue progress, AR aging
- Database: A lightweight cache (Supabase) to store results between refreshes so the dashboard loads instantly
- Frontend: A simple React or plain HTML/JS dashboard that displays the KPI cards and charts
The dashboard should refresh automatically — either on a schedule (every hour) or on demand when the user loads the page. No manual exports, no copy-pasting from JobTread reports.
What the finished dashboard looks like
For a commercial painting contractor in Georgia, the finished dashboard shows:
- Pipeline value by status — $X pending, $X approved, $X active — updated live from JobTread
- GP% per job, ranked highest to lowest — with color coding for jobs that are tracking below target
- A revenue progress bar — YTD revenue vs. annual goal, updated as invoices are created
- AR outstanding — total amount, number of open invoices, and which jobs have invoices overdue by 30+ days
- Cost burn per job — what percentage of each job's budget has been consumed, flagging jobs that are burning fast
The owner can check it from a phone in 30 seconds. The first time a job shows up as "at risk" in the cost burn column while there's still time to do something about it, the dashboard pays for itself.
Can you build this yourself?
If you have a developer on staff or in your network, yes — the APIs are well-documented and the architecture is straightforward. Budget 3-4 weeks of development time for a solid first version.
If you don't have technical resources in-house, this is a fixed-scope project that's worth bringing in a specialist for. The setup is done once, and from that point the dashboard runs without maintenance.
Want this built for your JobTread account?
I build live financial dashboards for specialty contractors — connected to JobTread and QuickBooks, delivered in 2 weeks, starting from $3,500.