What makes a freelance invoice different
A freelance invoice bills for your time or for a stage of a project, not for units sitting on a shelf. That difference shows up in three places. The line item is a rate multiplied by hours, so a reviewer can check it against the timesheet they approved. The header names the deliverable or the milestone rather than a product code. And the terms reflect how freelancers actually get paid: often part of a fee up front, more at a checkpoint, and the balance at handover.
Everything else is the same as any invoice a client can pay from, and the same rules about what makes the document payable apply. It needs a unique number, an issue date, a due date or stated terms, who is billing, who is being billed, what you supplied, the amount, and the currency. This page takes the general generator and adds the freelance fields in the Project details block: hourly rate, hours to bill, payment stage, a project or milestone name, and a late-payment note. The tool does not store your clients and there is no recurring billing here. You fill the form and you download a PDF. That is the whole product, which is why it is free and why your figures are not sitting on anyone's server.
How your hours become line items
Enter a rate and the hours, and the maths runs the way a timesheet does. A 12-hour row at 85 per hour prints as 1,020 and joins the subtotal immediately. If a job mixes time and reimbursables, keep the hours on their own row and add separate rows for expenses. Do not fold a flight or a stock license into an hourly figure, because a blended rate is the first line a cautious reviewer questions, and it makes your margin look arbitrary.
- Round hours to a quarter at most so a reviewer can tie them to an approved timesheet
- Name the row for the task, not for you: 'Editorial pass, rounds 1 and 2' beats 'Work done'
- Put expenses on their own lines with a real amount, never buried inside a rate
- If you bill a fixed fee instead of time, set hours to one and enter the fee as the amount
- Apply tax and any discount after the rate-times-hours row so the base total stays visible
Milestone, retainer, or fixed fee
The payment-stage selector changes how the document reads to a client and to their accounts team, but it never changes the arithmetic on its own: it is a label and a prompt to number things sensibly. The three setups below are the ones you will run into most. Give each its own numbering so two invoices for the same project never look like a duplicate you resent by mistake.
- Full amount One project, one fee, one invoice due on your terms. The simplest case. Use a plain sequence such as INV-2026-041 and let auto-increment handle the next job.
- Milestone Split the fee across stages, for example a third to begin, a third at a checkpoint, the rest at handover. Append a stage suffix so order is visible: 2026-041-1, 2026-041-2, 2026-041-3. A clerk can then see the second invoice is not a resend.
- Retainer A fixed monthly amount for ongoing availability. Put the period in the number, like RET-2026-09, so it reads clearly three months later and never collides with your per-project sequence.
| Billing style | Number pattern | When the balance is commonly due |
|---|---|---|
| Full amount | INV-2026-041 | Net 14 or Net 30 from the issue date |
| Milestone | 2026-041-1, then 2026-041-2 | Each stage on its own terms |
| Retainer | RET-2026-09 | On receipt, once each month |
What accounts payable rejects, and why
When a bigger client's payment team bounces an invoice back, it is rarely about the amount. It is almost always a missing or mismatched field, and fixing those before you send beats chasing after. These are the reasons a freelance invoice gets held rather than paid.
- No purchase order or job number when one exists: reference it in the client block or the notes
- A duplicate invoice number, the single most common rejection, which auto-increment is there to prevent
- Your address or registration number missing where the client is required to record it
- A total that does not match the contract or the approved estimate, with nothing to explain the gap
- A due date earlier than the issue date, or terms that contradict the date you printed
- A currency mismatch, where the amount is in one currency and the payment instruction assumes another
- No stated way to pay: put your bank details or a payment reference where it prints on the document
Late payment, in plain terms
Chasing unpaid invoices is the part of freelancing nobody prepares you for. A late-payment note is a small deterrent and a large clarity win: if interest on overdue balances is stated on the very document the client accepted, raising it later is not an ambush. Keep the wording factual and match it to whatever your contract already says, because an invoice cannot invent a right your agreement did not grant. Whether you may charge interest at all, and at what level, varies by place, and some jurisdictions cap it or offer a statutory scheme; confirm what you can actually claim before you put a percentage on the page. If a payment slips, send a short reminder with the original PDF attached rather than a summary from memory, then a firmer one on a fixed interval. For ongoing work, pausing at the next milestone is usually more effective than any interest line.
- State the term once, on the document The late-payment note prints on the invoice, so the condition is agreed when you issue the bill, not argued when you chase it.
- Remind with the file attached Forward the original PDF with one line of text. A clerk searching for a number finds the attachment faster than they can unpick a paraphrased summary.
- Escalate on a schedule you set Pick intervals, say day 7 and day 14, and hold them. Predictable pressure works better than one angry email on day 40.
- Use the leverage you have Where the project is still running, a clean pause at a milestone is the clearest signal you can send, and it costs you nothing to write.
Tax and paperwork, briefly
Whether your invoice must show tax separately, and whether it needs a registration number, depends on where you are, what you sell, and whether you are registered. None of what follows is tax advice; it is a map of the questions to bring to your accountant or tax authority.
In the United States a freelancer usually hands a client a W-9 rather than adding sales tax, and the client issues a 1099 where required, but whether either applies turns on your state, your client, and your structure. In the United Kingdom, the European Union, Australia, and elsewhere, sellers registered for VAT or GST commonly show that tax as its own line together with a registration number, and the point at which registration becomes required varies and changes. There are special regimes you may meet as a contractor, such as IR35 in the UK or self-billing by some clients, and those change what the document needs to say.
What this tool can honestly do is arithmetic and formatting. Enter a tax rate and it appears as a line computed on the discounted subtotal; type a registration number in your business block and it prints; keep the numbering consistent with auto-increment. It will not know your jurisdiction or your registration status, so treat the tax fields as a calculator, not as a compliance guarantee. If you want those fields laid out and named by country, the tax invoice generator page on this site does that.