How-To Guides

How to See If a Job Made Money with Job Costing in ZartonAI

Put timesheet hours and materials used next to what you quoted, invoiced and were paid — and find out which jobs, job types and customers really pay the bills

Zarton EditorsOct 25, 2026 · 7 min read
Listen to this article

The invoice went out, the customer paid, and the job felt like a good one. But did it actually make money? Two extra days on site, a second trip to the supply house and a helper you forgot to price in can quietly turn a “good job” into one that barely covered its costs.

This guide shows you how to use job costing in ZartonAI to see what each job really cost against what you quoted and invoiced. You will log the hours and materials that went into a job, read its margin, compare it with similar jobs and with that customer’s other work, and use what you learn to price the next one.

Why job costing matters for a trade business

Most electricians, plumbers, HVAC companies, body shops and contractors know their revenue to the dollar and their profit per job only roughly. The estimate says what you planned to spend; the bank balance says what happened across the whole month. Neither tells you which jobs, job types or customers are carrying the business and which ones are dragging it down.

ZartonAI already holds the pieces: the estimate on the job, the invoices and payments, the hours your team logs on their timesheets and the materials taken out of stock for the job. Job costing puts them side by side, so each job ends with a real number instead of a feeling.

What a job costing report shows

LineWhere it comes from
QuotedThe estimate the customer accepted for the job
Invoiced and paidThe invoices raised for the job and the payments recorded against them
LabourHours logged against the job on timesheets, multiplied by each person’s hourly cost
MaterialsStock used on the job, net of anything returned
Cost and marginLabour plus materials, and what is left of the job’s revenue, in dollars and as a percentage
ComparisonsFinished jobs of the same type, and this customer’s other jobs and their average margin

How to use job costing in ZartonAI, step by step

  1. Give each job a type. When you create or edit a job, set its type — installation, repair, maintenance, inspection, service call, remodel, new construction, emergency or other. Job costing compares a job with finished jobs of the same type, so a water heater swap is measured against other service calls, not against a kitchen remodel.
  2. Make sure each person has an hourly cost. Labour cost is worked out from the hours a person logs and what an hour of their time costs the business. That cost is kept on their team record, not on the job, and job costing shows labour as hours and a total for the job rather than person by person.
  3. Have the crew log hours against the job. On My hours, each worked row has a job picker, with the person’s own jobs listed first. Choosing a job also records its site. When someone puts hours on a job, those hours count toward its labour cost.
  4. Require a job on worked hours (optional but recommended). In the timesheet settings, under the pay code rules, a manager can turn on Hours by job: off, warn, or refuse to submit a week when worked hours don’t say which job they were for. You can apply it only to people who are on jobs, and decide whether people can pick any open job or only their own, and whether they can pick a job site instead.
  5. Record the materials that went on the job. When parts leave the shelf or the van for a job, record them as used on that job from the location they came from. If something comes back unused, record a return from the job. Job costing counts what was used minus what was returned, at the stock item’s cost.
  6. Read the job’s costing. Open job costing for the job to see what was quoted, invoiced and paid, the labour hours and their cost, the materials, the total cost and the margin. Underneath, it shows how the job compares with finished jobs of the same type and with this customer’s other jobs.
  7. Review your recent finished jobs together. Leave the job out and job costing lists the margins of your recent finished jobs, lowest first, with the average. Start at the top: the jobs that made the least are the ones worth a conversation.
  8. Price the next job from what similar jobs really cost. Before you write the next estimate, look at what jobs of that type actually cost, not just what you charged last time. If one kind of job keeps landing under your target margin, adjust your rates or the way you build that service up.

Tips and common mistakes

  • No hours logged means no labour cost. If nobody picked the job on their timesheet, the job shows zero labour and a margin that looks far better than reality. A margin near 100% almost always means the costs were never recorded, not that the job was free to do.
  • Record materials as you go. “I’ll log it later” becomes never. Recording use from the van on the day keeps both your stock count and your job cost honest.
  • Don’t forget returns. Leftover wire or fittings that go back on the shelf should be returned from the job, or the job carries a cost it didn’t have.
  • Compare like with like. A job with no type, or the wrong one, gets compared with the wrong jobs. Keep job types accurate.
  • Look at customers, not just jobs. A customer whose jobs average a thin margin may be worth repricing, even if each single job looked fine.

Do it with Claude

ZartonAI works with Claude through the Zarton connector, so you can ask about job profit in plain language from your phone or laptop. Claude reads the job costing and quotes its figures; it reports labour as a total and never states a person’s pay rate. Try requests like:

“Did JOB-14 make money? Show me labour, materials and the margin.”

“Which of our recent finished jobs had the lowest margin?”

“How does the Elm Street water heater job compare with our other service calls?”

“What materials went on JOB-12, and what did they cost?”

“I need to price a panel upgrade. What did similar jobs actually cost us, and what did we charge?”

See what else Claude can do on our Works with Claude page.

Frequently asked questions

Where does ZartonAI get the labour cost for a job?

From the hours your team logs against the job on their timesheets, multiplied by each person’s hourly cost from their team record. The report shows the labour total only, not individual pay.

Does job costing show what each person is paid?

No. Labour is shown as hours and a total cost for the job. Each person’s hourly cost stays on their team record.

How are materials counted?

Stock recorded as used on the job, minus anything returned from the job, at the item’s cost.

Why does a job show a 100% margin?

Because no hours or materials were recorded against it. Ask the crew to pick the job on their timesheets and record the materials used, and the margin will reflect what the job really cost.

Can I see margins for all my recent jobs at once?

Yes. Open job costing without choosing a job to list your recent finished jobs by margin, lowest first, with the average.

Related reading

Know which jobs pay the bills. Log your hours and materials against your next job in ZartonAI and see its real margin the day it closes.

Try it at zartonai.com

Comments

No comments yet — be the first to share your thoughts.

Join the discussion

Comment

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Keep reading

All posts

Run your whole business from one conversation.

Get startedTalk to us