Your invoice isn't a spreadsheet

Why qty × rate = amount doesn't work for production invoices, and what to do about it.

Open your invoicing tool. Create a new invoice. Try to add a line item that says:

Short turnaround penalty — $1,200

You can’t, can you? The form wants a description, a quantity, a rate, and maybe a unit. It wants to multiply two numbers together to get a third number. It wants your invoice to be a spreadsheet.

But your invoice isn’t a spreadsheet. It’s a document.

The qty × rate trap

Most invoicing tools are built around a single idea: every line item is a quantity multiplied by a rate. Three days at $1,200. Five hours at $150. One camera package at $1,750.

This works when your work fits neatly into boxes. It falls apart when it doesn’t.

Here’s what a real production invoice looks like:

LineWhat it isHow it’s calculated
3 days @ $1,200Day rateqty × rate ✓
Overtime — 4hrs @ $180/hrOvertime loadingqty × rate ✓
Short turnaround penaltyRule-based flat feejust a number
Camera package (5-day week)Kit rentalweekly flat rate
Hard drive — Samsung T7 2TBExpense reimbursementreceipt amount
Travel — Bondi to Fox StudiosMileage allowanceper-job flat

Half of those lines don’t have a meaningful quantity or rate. The turnaround penalty is $1,200 because the rate card says it’s $1,200. The hard drive is $189 because that’s what the receipt says. Forcing these into qty: 1, rate: $1,200 is technically possible but it makes the invoice look stupid — and it makes the data useless for reporting.

What “freeform” actually means

A freeform line item is one where you write the description and the amount, and that’s it. No quantity field. No rate field. No multiplication. The invoice says what you need it to say, and the number is what the number is.

But freeform doesn’t mean unstructured. The best setup is a mix:

  • Structured lines for repeating work: days, hours, units. These pull from your rate card, calculate automatically, and give you reporting data.
  • Freeform lines for everything else: penalties, flat fees, reimbursements, one-off charges. You type the description, enter the amount, done.
  • Sections to group them: Labour at the top, kit rental in the middle, expenses at the bottom. The client’s production accountant can allocate costs without calling you.

The section problem

This is where most tools really struggle. A production invoice isn’t a flat list of lines — it’s grouped.

LABOUR
  3 days @ $1,200/day .................. $3,600
  Overtime — 4hrs @ 1.5× .............. $720
  Short turnaround penalty ............. $1,200

KIT RENTAL
  Camera package (weekly) .............. $1,750

EXPENSES
  Hard drive — Samsung T7 .............. $189
  Travel ................................ $85

Try doing that in most invoicing tools. You’ll end up with six line items in a flat list, maybe with the section name typed into the description field. No subtotals per section. No visual grouping. The production accountant gets a wall of text and has to figure out which lines are labour and which are expenses.

Sections, packages, and the two-audience problem

Sections aren’t just formatting — they’re data. When your invoice has a “Labour” section and a “Kit Rental” section, your year-end reporting can tell you how much of your income came from each. When it’s a flat list, everything is just “revenue.”

But sections unlock something more important: the ability to show different views to different audiences.

Your client doesn’t need to see every lens and body in your camera package. They need to see “Camera package — $1,750.” Your accountant, on the other hand, needs the breakdown so they can allocate the income to the right accounts.

Same invoice. Two views:

What your client sees:

LABOUR
  3 days @ $1,200/day .................. $3,600
  Overtime + turnaround ................ $1,920
                            Subtotal    $5,520

KIT RENTAL
  Camera package (weekly) .............. $1,750

What your accountant’s export contains:

4-1100  Labour income        $3,600.00
4-1110  Overtime income        $720.00
4-1120  Penalty income       $1,200.00
4-1200  Equipment rental     $1,750.00
4-1300  Expense recovery       $274.00

The “Overtime + turnaround” line on the client invoice is a collapsed section — a package. It prints as one line, but the data behind it is two separate entries with different account codes. You save the section as a reusable package: next time you have a short turnaround + overtime day, it’s one click.

No other invoicing tool handles this. Some have subtotal lines. Some have bundles. None let you define named sections, save them as packages, choose whether to print them collapsed or expanded, and export the full detail to your accountant while showing the client only what they need to see.

Why this matters for your numbers

When every line item is qty × rate, your reporting can only tell you “you invoiced X line items for Y total.” It can’t tell you how much of your income is labour versus kit rental versus expenses, because the data model doesn’t distinguish between them.

When sections carry account codes and your export maps to your chart of accounts, your year-end numbers tell you something useful. How much did you earn from day rates versus overtime? How much kit rental income did you generate? Are your expenses eating into your margins?

Your accountant stops asking you to categorise things manually. The invoice already did it.

What to look for

If you’re evaluating invoicing tools, create a test invoice with these lines:

  1. A structured line: 3 days at your day rate
  2. A loading: overtime at 1.5× for 4 hours
  3. A flat penalty: short turnaround, no quantity
  4. A kit rental: weekly rate, not daily
  5. An expense: exact receipt amount
  6. Group 1–3 under “Labour” and 4–5 under their own sections
  7. Collapse “Labour” to a single print line for the client
  8. Export the full detail with account codes for the accountant

If the tool can do all eight without you fighting the form, it understands production invoicing. If it can’t, you’ll be working around it for every invoice you send.