Skip to content
Book a free call

Portfolio sample / Research, spreadsheets & dashboards

See what each job earns.

I connect editable inputs to named formulas, a source register and checks you can repeat. This job-cost specimen shows the working method. All three jobs, hours, rates and expenses are invented.

Working specimen / Three fictional jobs / CAD

A small sheet.
A visible calculation.

Change a job label, hours, billing rate or direct cash expense. Set an allowance for each owner hour. The sample recalculates each row and the total. These inputs are arithmetic examples, not studio rates, quotes or recorded revenue.

Job-cost register

Example version 1.0 · Values exclude tax. Inputs are not sent or saved. Reloading restores the sample.

01 / Job economics
A planning cost for time. Range 0 to 100,000 CAD per hour.

Hours and billing rates create revenue in this simplified hourly example. Direct cash expense covers purchased material or a job-specific supplier cost. The owner-hour allowance is a planning value. It is not a recorded payment.

Billable revenue$2,390.00Hours × sample billing rate
Direct cash expense$170.00Job-specific purchases only
Owner-hours allowance$1,080.0024 hours × $45.00
After owner hours$1,140.00Before overhead and tax
Editable fields: label, hours, billing rate and direct expense. Each row is a fictional example. Scroll across to inspect the outputs.
Job labelHoursBilling rate
CAD / hour
Direct expense
CAD
Revenue
CAD
Direct cash
contribution
After owner
hours
After owner
hours / hour
$570.00 $540.00 $270.00 $45.00
$1,100.00 $980.00 $530.00 $53.00
$720.00 $700.00 $340.00 $42.50
Fictional sample total24.00Mixed rates$170.00$2,390.00$2,220.00$1,140.00$47.50

Default fictional sample shown. Numeric ranges: hours 0 to 10,000; rate 0 to 100,000; expense 0 to 1,000,000. Two decimal places.

Enable JavaScript to recalculate and export. The default CSV is available above.

Direct cash contribution is not cash profit. It subtracts the direct expense from billable revenue. This sheet does not track receipt timing, overhead, tax, financing or owner drawings. “After owner hours” also subtracts an allowance for time. A positive figure is an input to a business decision, not a complete profit statement.

Data dictionary / Formula map

Each number has a definition.

I define the unit, source and calculation before building a dashboard. This specimen uses one currency and one job grain: each row describes one fictional job.

FieldUnit / typeDefinition or formulaBoundary
LabelTextJob identifier. Up to 64 characters.A sample name identifies the row. It does not identify a client.
HoursDecimal hoursEditable billable owner hours.Sales, admin and unbilled hours are excluded here.
Billing rateCAD / hourEditable sample rate used to calculate billable revenue.Invented for arithmetic. A fixed-fee job needs a separate revenue input.
Direct expenseCAD / jobEditable material or supplier expense attributed to this job.No shared overhead allocation. Use actual receipts for real work.
RevenueCAD / jobhours × billing rateRounded to cents for each row.Billable value. Cash collected is a separate field in a real ledger.
Direct cash contributionCAD / jobrevenue − direct expenseRounded to cents.Before owner time, overhead and tax.
Owner-hours costCAD / jobhours × owner-hour allowanceRounded to cents for each row.Planning allowance. Not automatically a cash expense.
After owner hoursCAD / jobdirect cash contribution − owner-hours costRounded to cents.Can be negative. Still excludes shared overhead and tax.
After owner hours / hourCAD / owner hourafter owner hours ÷ hoursThe total divides total contribution by total hours.When hours are zero, display “No hours”. Do not divide by zero or average the row rates.
TotalSame unit as each fieldSum the rounded row amounts. Keep the unrounded ratio for calculation and show two decimal places.No total billing rate. Mixed job rates cannot be added meaningfully.

Repeatable checks / Expected results

The answer can be checked
without trusting the interface.

Default example A

6 × $95 = $570
$570 − $30 − (6 × $45) = $270

Direct cash contribution is $540. After the owner-hour allowance, $270 remains. Divide by 6 hours to get $45 per hour. The three default rows total 24 hours and $1,140 after owner hours: $47.50 per hour.

A zero-hours case

0 × $95 = $0
$0 − $30 − (0 × $45) = −$30

Revenue and owner-hours cost are zero. The direct expense still exists. Contribution is negative $30. The per-hour output reads “No hours”. A zero denominator does not erase a cost.

Input checks

Empty or out-of-range numeric inputs pause calculation and disable export. The previous figures remain visible with a pause notice. Labels are inserted as text. Reset restores all three fictional rows.

Export checks

The CSV contains values and a fictional-example label. Text that could begin a spreadsheet formula receives a leading apostrophe. Commas, quotes and line breaks are quoted. No formulas or external links are executed.

Evidence register / Research belongs beside the numbers

Missing evidence stays visible.

I keep the research register connected to the decision. A polished chart cannot repair missing records. The sample below identifies the evidence needed to turn this demonstration into a job review. No market statistics or client results are asserted.

Record / statusSource in this sampleWhat it supportsCheck before real use
S01 / Example inputsIllustrativeValues authored for this public specimen.Arithmetic and interface checks only.Replace the labels and inputs with permissioned records.
S02 / Billed amountNot suppliedNo invoices or sales ledger attached.No actual revenue claim.Reconcile jobs to dated invoices; distinguish billed and collected amounts.
S03 / Time and expensesNot suppliedNo time log or purchase receipts attached.No actual job margin claim.Check units, duplicate costs, missing time and the expense definition.
S04 / Research claimNo external claim usedNo research statistic needed for this arithmetic example.No market demand or performance conclusion.For a research claim, record the original source, date, exact support, limitation and reviewer.

The source record I hand over

Claim or field. Source title and location. Publisher or record owner. Publication and access dates when relevant. The part that supports the claim. Its limitation. Review status. These fields make a research finding traceable.

The first useful extension

Add actual time logs and expense records before adding more charts. For a solo business, the hours available for paid work can become the constraint. Keep sales and admin time visible before committing more delivery work.

Take the specimen apart: default values, definitions and a source-register structure.