Bulk Quote Generator

A bulk quote generator turns one spreadsheet into many finished quotes or estimates at once: upload an .xlsx, .xls or .csv file and get back a ZIP holding one A4 PDF quote per quote number. Download the template, fill in one row per line item, upload it, and generate the ZIP — or upload the spreadsheet you already use for bulk invoicing. No sign-up, nothing uploaded — the file is read right here in your browser.

  1. Get the template

    Download the Excel template, then fill in a row for each line item. Reuse the same Quote # on several rows to put multiple items on one quote. Already have a Bulk Invoice spreadsheet? Skip this step and upload it as it is.

  2. Upload your file

    No file chosen

    Accepts .xlsx, .xls or .csv — read in your browser, never uploaded.

  3. Generate

How to generate quotes from Excel

Click Download Excel template to get a spreadsheet with the right columns and example rows. Fill in one row per line item — the columns cover your business, the client, the quote number and dates, the item description, quantity and unit price, plus optional discount, tax and notes. To put several items on one quote, give those rows the same Quote #. Save the file, upload it here, and click Generate to download a ZIP containing one PDF per quote.

Quotes and invoices from one spreadsheet

A quote and an invoice carry the same information: who it is from, who it is for, the line items, any discount and tax, and a date. So the spreadsheet you use for the Bulk Invoice Generator works here without changes. When the sheet has no Quote # column, rows are grouped by Invoice # instead, and Due Date is read as Valid Until. Quote a batch of clients, and when they accept, upload the same file to the Bulk Invoice Generator to bill them.

What the template columns mean

The template has 16 columns, and only four of them are required: Client Name, Item Description, Qty and Unit Price. If any of those headers is missing, the upload is rejected with a message naming it. A quote is skipped — and listed as skipped in the summary — when it has no client name or no valid line items. The optional columns are Quote #, Issue Date, Valid Until, Currency, Business Name, Business Details, Client Details, Discount, Discount Type, Tax Rate, Tax Label and Notes. Values that describe the whole quote are taken from its first row. Dates can be written as YYYY-MM-DD or M/D/YYYY. Discount Type accepts % or percent for a percentage and anything else for a flat amount. Currency accepts USD, EUR, GBP, CAD, AUD, NZD, JPY, CNY, CHF, INR, SGD, ZAR, BRL or MXN; a blank or unrecognised code falls back to USD.

Nothing is uploaded

Your spreadsheet is read entirely in your browser — it is never sent to a server. The PDFs are built on your device by a self-hosted PDF engine and zipped locally. There is no row limit, no quote limit and no sign-up; you get a single quotes.zip with one A4 PDF per quote, each named after its quote number and client. Every quote is drawn by the same code as the Quote Generator, so a bulk quote and a single one with the same details are identical.

Frequently Asked Questions

Is this bulk quote generator free?
Yes — the LK Forge Bulk Quote Generator is completely free, with no sign-up and no limit on how many quotes you create. It runs entirely in your browser, so your spreadsheet and your clients' details are never uploaded to a server. The only practical ceiling is your device's memory, because the whole batch is built in the tab.
Can I use my Bulk Invoice spreadsheet?
Yes — if your sheet has no Quote # column, the Invoice # column is used to group rows into quotes. Due Date is read as the Valid Until date in that case. Every other column — client, line items, discount, tax, notes — means the same thing on a quote as on an invoice.
Which spreadsheet columns are required?
Four columns are required: Client Name, Item Description, Qty and Unit Price. Everything else is optional, including Quote #, Issue Date, Valid Until, Currency, Business Name, Business Details, Client Details, Discount, Discount Type, Tax Rate, Tax Label and Notes. If a required header is missing, the generator names it rather than producing a broken batch. Column order does not matter.
Do bulk quotes look the same as single quotes?
Bulk quotes are drawn by the same renderer as the single Quote Generator, so the layout, the totals, the discount and tax lines and the valid-until date come out identical to a quote made one at a time with the same details. What changes is only the data source: a single quote is typed into the on-page form, while a batch is read from your spreadsheet's Client Name, Valid Until and item columns. A logo added before generating carries over to every quote in that batch, the same as it would on one quote.