Know which GCs and jobs make you money.
Connect estimating, bid outcomes, labor hours, change orders, and job costs in a report your team can act on. KLYX builds KPI workflows for commercial subcontractors so you can compare profitability by GC and job type, understand recorded win/loss reasons, and see where actual results are drifting from the estimate.
Book an Operations ReviewWhere the work gets stuck.
Your bid log shows what you chased. Accounting shows what you spent. Field records show what happened. When those records do not connect, the biggest customer can look like the best customer even when the margin says otherwise.
Integration access and capabilities are confirmed during discovery.
Compare gross profit dollars and margin by GC and job type
Track win/loss reasons with evidence and unknowns visible
Connect estimated costs and hours to actual job results
Surface overdue follow-ups, unbilled changes, and missing data
Drafts and recommendations are reviewed by your team before a pricing decision, technical response, submission, or purchasing commitment.
The largest account is only part of the story.
Compare revenue, gross profit dollars, and margin side by side. Then review the bid outcomes and the evidence behind them.
In this illustrative example, GC B brings more revenue, but GC A contributes more gross profit. Your own report uses your agreed job-cost definitions and source records.
Which relationships pay?
Completed jobs · illustrative period
| GC | Revenue | Gross profit | Margin |
|---|---|---|---|
| GC A | $1.2m | $300k | 25% |
| GC B | $2.0m | $280k | 14% |
| GC C | $800k | $176k | 22% |
GC B brings the most revenue.
GC A contributes the most gross profit.
Illustrative data, not client results. Gross profit uses sample direct job costs; overhead and cash collection are separate.
Start small. Check the work.
Map the current process
Bring a representative example, the tools involved, and the person who owns the workflow.
Define the review steps
Agree on permissions, source records, approval boundaries, and exception handling.
Pilot and measure
Test on a limited scope, compare against your baseline, and train the team before expanding.
The next bid should learn from the last job.
Connect each bid, GC submission, awarded job, and cost record with reliable identifiers. Compare results by GC, job type, project size, trade scope, and time period. Normalize duplicate company names before drawing conclusions.
Review both gross profit dollars and margin percentage. A high-revenue GC can produce less gross profit than a smaller account. Keep realized results from completed jobs separate from forecasts for work still underway.
A short set of numbers with an owner.
Estimating: preparation hours, estimating hours per bid, turnaround time, bids submitted, and overdue follow-ups. Outcomes: wins divided by decided bids, segmented by GC and job type, with pending jobs and no-bids kept separate.
Job performance: estimated versus actual labor hours and direct costs, gross profit and margin, pending change value, and approved changes awaiting billing. Show collection status separately from revenue and profit.
Keep the numbers current and explain the gaps.
Schedule imports or syncs from the agreed source systems. Check duplicate jobs, missing time, unassigned costs, stale bid statuses, and changes that have no billing reference. Route exceptions to an owner rather than silently filling gaps.
Show the last successful update and source references. A weekly review can identify the bids to follow up, the GCs to prioritize, and the jobs needing attention. Measure improvement against your own baseline.
Start with the decision you need to make.
Bring a bid log, a representative job-cost report, and the person who owns each. We identify the available fields and define the first report, its calculation rules, update schedule, and review process before implementation.
Your questions,
answered.
What does profitability mean on these reports?
Define the cost basis with your accounting team. Gross profit is job revenue less the agreed direct job costs; gross margin is that amount divided by revenue. Show overhead separately unless it has been consistently allocated. Completed-job results, open-job forecasts, and cash received are different measures.
How do we know why we won or lost?
Record the outcome and its supporting GC feedback or estimator assessment. AI can summarize that evidence and group reasons, but it cannot infer a confirmed cause from a win rate. Show the unknowns and the number of bids behind each comparison.
What if our records are incomplete?
Start with the reliable fields and identify the gaps. Each report should show its last update, missing costs or hours, unmatched jobs, and disputed values. An incomplete record should not quietly appear as zero cost or healthy margin.
Does this work with our existing software?
We start with your existing estimating, project, timekeeping, and accounting tools. The audit confirms access, available integrations or exports, update frequency, and which records your team treats as authoritative before a build is scoped.
Let’s put your back office
to work.
We’ll review how you estimate, follow up, and track job results, then identify the workflow and data to investigate first.
Leave the initial conversation with a proposed focus and next steps. A detailed workflow map and ranked recommendations follow the separately scoped operations audit.
A real conversation. With the person who builds it.