About InvoiceLocal
InvoiceLocal does one job: turn your work into a professional PDF invoice, entirely inside your browser.
It exists because of what an invoice actually contains: your client list, your rates, your income, your bank details. Most “free invoice generators” ask you to type all of that into their servers — usually because the generator is a lead magnet for accounting software, and your email address (gated before the download, as often as not) is the price of the PDF. That trade is rarely stated out loud, which is exactly what’s wrong with it.
The fix is architectural, not cosmetic. This site is static: there is no upload endpoint, no processing queue, no account system, no email field. The PDF is assembled by pdf-lib, an open-source library running as JavaScript in your browser; drafts persist in your browser’s own storage. That’s why the tool works offline, and why the privacy claim can be verified in your browser’s DevTools Network tab rather than taken on faith.
Principles
- Local only. Clients, rates and totals never leave your device. Not “encrypted in transit” — never transmitted.
- Honest about rules. Invoice requirements differ by country; our pages state what we researched, when we researched it, and that you should confirm against official sources. No fake certainty.
- Free without a catch. No signup, no watermark, no invoice caps, no “premium templates”. Your device does the work, so serving you costs almost nothing.
- No lock-in by design. Your data lives in your browser, not our database — there is nothing to export, cancel, or beg back from us, because we never had it.
Who makes this
InvoiceLocal is built and maintained by an independent developer as part of a small family of single-purpose, local-first browser tools. It may eventually show unobtrusive ads to cover its costs — if it does, they will sit outside the tool and will never see your invoice data, because the no-upload architecture doesn’t change with the funding model.
Questions, bug reports, or a billing scenario we should cover? Get in touch.