Skip to content
Koit Academy

Free tool · no signup

Invoice generator

Fill in the form, watch the invoice build, print it. 30 languages, and nothing you type leaves this browser.

Runs entirely in this browser. Nothing you type — including the logo — is sent anywhere or logged. Your own details are saved on this device so you do not retype them; client details and line items are not. You can clear it below.

Changes the invoice only, not this page.

Invoice

From

Bill to

Line items

More details — logo, tax, bank, discount, currency

All optional. Anything left blank is left off the invoice entirely.

Your rate, not a market one — nothing is fetched.

Tax

Any provider. It becomes a button on the invoice, with the address printed under it so the paper copy still works. Nothing is ever requested from it.

Bank details

Saved on this device

Kept in this browser's local storage. It is never sent anywhere, and clearing it below removes it immediately.

Opens your browser's print dialog — choose Save as PDF as the destination, or a printer if you want paper.

Preview

How to use it

How to use the Invoice Generator

  1. 01

    Fill in the left side

    The invoice builds as you type. Only the fields you fill appear on it — leave tax, logo or bank details empty and they are simply not there.

  2. 02

    Pick language and template

    Labels translate into 30 languages independently of this site, and dates and amounts follow that language. 5 templates, every one of them meant to be sent to a client.

  3. 03

    Print or save as PDF

    Print gives you the invoice alone — no navigation, no footer, no watermark. Choose "Save as PDF" in the print dialog for a file.

Most invoice tools want an account before they will show you a document. This one is a page: the form is on the left, the invoice is on the right, and the two are the same thing. Nothing you type is transmitted, which matters more here than on most tools — the fields ask for a client's address and your bank account.

Why the empty fields disappear

Every invoice template has more fields than any single invoice needs. A one-line invoice for a fixed-fee job has no discount, no shipping, no purchase order and frequently no tax. Rendered through a normal template, that invoice arrives covered in labelled boxes containing nothing, and it reads as a form somebody gave up on halfway.

So the rule here is that an empty field is not on the document at all. No blank label, no zero row, no reserved space — the layout closes up behind it. A one-line invoice comes out as a short, deliberate page. Fill in every optional field and the same document grows a tax block, a bank panel, a reference row and a footer, and still looks like it was designed that way, because both extremes were designed.

Invoicing in a language you do not work in

The language selector changes the invoice, not this site. That distinction is the point: a freelancer in Tirana invoicing a company in Munich needs a German invoice and an English interface, and most tools make you choose one or the other by changing the whole application.

30 languages are supported, and the terms are the ones actually used on invoices in each rather than dictionary translations. German invoices say Rechnungsempfängerrather than a literal rendering of "bill to", and the tax line says MwSt. Dutch says Factuuradres and Btw. Italian says Fattura andPartita IVA. Getting these wrong is the kind of detail that tells a client you are working outside your normal territory.

Dates are part of the language

The date format follows the invoice language too, which is the part people miss. An invoice dated 09/05/2026 means the ninth of May to an American reader and is simply wrong on a European invoice for the fifth of September. Every supported language here is day-first, formatted the way that language writes dates, and the amounts follow the same locale — so a German invoice shows 1.234,56 and an English one 1,234.56.

Why printing is the download

There is no "download PDF" button because adding one means shipping a PDF library, and the smallest capable one is around 131 KB compressed. That is roughly thirty times the size of this entire tool, downloaded by every visitor to serve the fraction who click the button, on a page whose whole argument is that it loads immediately and touches no server.

Your browser already contains a PDF writer. The print dialog has a "Save as PDF" destination in Chrome, Edge, Firefox and Safari, and it produces a better file than a JavaScript library rasterising a screenshot — real text, selectable and searchable, at whatever resolution the reader's screen or printer wants. The stylesheet here is written for that path rather than tolerating it: printing gives you the invoice at A4 with the navigation, the form and the site around it removed, and no watermark on the document.

What actually belongs on a freelance invoice

The legally required content varies by country and this tool does not pretend to know yours, but the practical list is stable. A unique invoice number you can refer to in an email. The date of issue and a due date, because "payable on receipt" is not a date and cannot be chased. Both parties named and addressed. A description specific enough that somebody in accounts who has never met you can match it to an approved cost.

Then the parts people leave off and regret. A purchase order number, when the client works with them, is frequently the difference between payment in fourteen days and an invoice sitting in a queue nobody owns. Payment terms stated on the document rather than agreed in a call. Bank details in full, including the BIC for a cross-border transfer. And a tax registration number where you have one, since a business client's accounts department may not be able to process the invoice without it.

Number them so the sequence survives an audit

Invoice numbers are the one field people improvise, and it is the field most likely to be questioned later. Most jurisdictions expect a sequence that is unique and unbroken, which rules out anything derived from the client or the project — ACME-01 restarts every time you win a customer, and gaps in a sequence are what an auditor asks about first. A year and a running count is enough: 2026-001, then2026-002, regardless of who the invoice is for. Put the client's own reference in the purchase order or project field instead, where it helps them pay you without corrupting your own numbering.

Getting paid is a process, not an invoice

The invoice is one artefact in a sequence, and the sequence is where the money is actually won or lost. Agree the number before the work. Confirm the scope in writing, so the description on the invoice matches something the client has already approved. Send the invoice the day the work is delivered rather than at month end — an invoice that arrives with the deliverable is read while the client is pleased with you.

Then chase on a schedule instead of on feeling: a polite note the day after the due date, a firmer one a week later, and a decision at thirty days about whether this is a client you keep. The single most useful habit is making the next step easy — the exact amount, the exact reference, the account details on the document, so that paying you takes less effort than deferring it.

Questions

What people ask about match types

Is anything I type here uploaded?
No. There is no server involved and no request is made. The page is static HTML and the invoice is assembled by JavaScript already running in your browser — including the logo, which is read locally with FileReader and never transmitted. You can confirm it rather than believe it: open the network tab, fill the whole form, upload a logo and print. Nothing appears. Some of it is saved, but only on this device and only your half of the invoice: your name and address, your tax number, your bank details, and your template and language. That is what stops you retyping them every month. Client details and line items are not saved unless you tick the box that asks, because those change every invoice and are the more sensitive half. All of it lives in local storage in this browser, never on a server, and the Forget button removes it immediately.
Why print instead of a download button?
Because a download button would mean shipping a PDF library, and the smallest capable one is about 131 KB compressed — roughly thirty times the weight of this entire tool, loaded by everyone to serve the people who click it. Every browser already contains a competent PDF writer: the print dialog has a "Save as PDF" destination. The stylesheet here is written for that path, so what you get is the invoice on its own page, at A4, with the site stripped out.
Can I invoice in a language I do not speak?
That is what the language selector is for. It changes the invoice only — every label printed on the document — and leaves this site in English. So you can be in Tirana, issue a German invoice to a client in Munich with the correct terms on it, and never change the page around you. The date format follows the invoice language too, which is the part people forget: a German invoice showing 09/05/2026 for the fifth of September is wrong in a way that looks careless.
Does it handle VAT and reverse charge?
It handles the arithmetic and the labelling: a percentage, a label you choose or type yourself, and your registration number on the document. It does not decide whether you should be charging tax, which depends on where you both are and what you are selling, and no free tool should pretend otherwise. If you are invoicing across a border and need a reverse-charge note, put it in the notes field, which prints where you would expect it.
Why do empty fields disappear instead of showing a blank?
Because a document with empty labelled boxes on it looks like a form somebody failed to finish, and that is the impression an invoice cannot afford to make. Most invoices need a fraction of the fields available: one line, no discount, no shipping, no purchase order. Those invoices should look deliberate rather than sparse, so anything left blank is left out of the layout entirely, and the spacing closes up behind it.

The long version

This tool is one page of a 189-page book