A prospect fills in the form on your website on Sunday evening. On Monday morning, you open the email, copy their details into your Word template, do the math, export to PDF, write the email, and log the quote in your spreadsheet. Thirty minutes, if nobody interrupts you. Meanwhile, a competitor may already have replied.
This tutorial shows how to hand that chain to n8n, the automation tool I use most (I explain it in what n8n is). It stops once the quote is sent. For what happens when the client goes quiet, read my article on automated quote follow-up: both workflows share the same tracking sheet.
Which quotes can you really automate?
Not every quote suits automation. The question to ask: can the price be calculated from what the client can type into a form?
- Yes, entirely. A cleaning company that charges by square meter and frequency, a caterer by number of guests, an equipment rental by the day. The quote can go out on its own within minutes.
- Yes, partly. A joinery business can price a standard window from its dimensions but needs to see the site for installation. You generate a draft quote and correct it before sending.
- No. A full renovation, a custom project, a service that needs a site visit. Here, automation only prepares the file (contact details, needs, photos) so you can price faster.
Even in the third case, you gain something: no more copying, a quote number assigned without mistakes, tracking created automatically.
What does the whole chain look like?
| Step | n8n node | What you should see on screen |
|---|---|---|
| 1. Receive the request | n8n Form Trigger or Webhook | The form fields in the node output |
| 2. Assign a number | Google Sheets (read) | The last number in the sheet, then the next one |
| 3. Calculate the amounts | Code or Edit Fields | Subtotal, tax, total |
| 4. Copy the template | Google Drive (Copy) | A new document in the quotes folder |
| 5. Fill in the document | Google Docs (Update, Find and Replace Text) | Placeholders replaced with real values |
| 6. Export to PDF | Google Drive (Download, PDF conversion) | A binary PDF file in the output |
| 7. Send | Gmail or Outlook | The email in your sent folder |
| 8. Track | Google Sheets (append row) | A "sent" row with the date |
Node and operation names come from the official n8n documentation, checked on October 17, 2026: the Google Drive node has a copy operation and converts Google files on download, and the Google Docs node has a find-and-replace text action.
How do you prepare the Google Docs template?
Start from your current quote and paste it into a Google Doc. Replace every variable item with an easy-to-spot placeholder in double square brackets: [[client_name]], [[client_address]], [[quote_number]], [[date]], [[valid_until]], [[subtotal]], [[tax]], [[total]].
Three tips:
- Unique placeholders. A placeholder that happens to appear inside another word gets replaced too. Double brackets avoid that.
- Line items. If the number of lines varies, the simplest option is a template with a fixed number of lines, or building the table in n8n and inserting a single block of text. Start simple.
- Mandatory wording. What a quote must contain depends on your country and trade. Have your accountant check the template once: the automation will then copy exactly what is written, mistakes included.
How do you build the n8n workflow, step by step?
1. Receive the request
Two options. The n8n Form Trigger node creates a form hosted by n8n, handy to get started. If your website already has a form, a Webhook node receives its data: the form posts the request to the webhook address. Either way, ask only for what you need (name, email, address, and the data used for the price).
2. Assign a quote number
A Google Sheets node reads the last number in the tracking sheet and works out the next one (Q-2026-042 after Q-2026-041). Continuous numbering with no gaps is easier to track and search.
3. Calculate the amounts
A Code node applies your rules: price per square meter, minimum charge, volume discount, tax. This is the part to test most: prepare five typical requests and check every total by hand.
4. Copy the template
A Google Drive node, Copy operation, duplicates the template into a "Quotes 2026" folder and names it with the number and client. Never work on the template itself.
5. Fill in the document
A Google Docs node, Update operation, with one Find and Replace Text action per placeholder. On screen, open the copy in Google Docs: no double brackets should remain.
6. Export to PDF
A Google Drive node, Download operation, with the Google file conversion option set to PDF for Google Docs. The output holds the file, ready to attach.
7. Send or hold
A Gmail node sends the PDF from your address, or sends it to you for approval (see the next section).
8. Create the tracking row
A last Google Sheets node appends the row: number, client, email, amount, date sent, status "sent". This is the row the follow-up workflow reads on day 3.
Should the quote go out directly or be approved first?
This is the real decision in this project, and it is not a technical one.
| Mode | For whom | How |
|---|---|---|
| Direct send | Fully calculable prices, stable catalog | The PDF goes to the client right away; you get a copy |
| One-click approval | Calculable prices that still need a check (first months, large amounts) | You receive the PDF with an "Approve" link that triggers sending |
| Draft | Quotes adjusted after a site visit | The document stays editable in Google Docs; you send it when ready |
I recommend starting with one-click approval, even if your prices are simple. After a few weeks with no corrections, switch to direct send knowing what you are doing. The approval link uses the Send and Wait for Response operation of the Gmail node: n8n sends you the quote, waits for your click, then carries on.
Which mistakes should you avoid?
- A calculation error repeated at scale. A wrong formula in a manual quote means one wrong quote. In a workflow, it means all of them. Test the edge cases: zero area, huge quantity, empty field.
- Duplicates. A visitor who clicks "Send" twice gets two quotes with two numbers. Check that the same address has not sent an identical request in the last few minutes.
- Fake submissions. A public form attracts bots. Add a hidden honeypot field and, in direct-send mode, do not generate a quote for an obviously fake email address.
- Expired Google access. If n8n's Google connection drops, no quote goes out. Set up an error alert that emails you straight away.
- An overflowing folder. File the copies by year and month from day one.
If you want this chain without building it yourself, it is a typical project in my quote and invoicing automation work: I start with a free mockup on your own quote template, then a fixed-price quote after the demo.
When is it better not to automate your quotes?
- Your invoicing software already does it. Some create quotes from a form or a catalog. Check its settings first: one more tool is one more tool to maintain.
- You send fewer than five quotes a month. A good template and ten minutes are enough.
- Every quote is unique. If the price depends mostly on your judgment on site, automate the intake, not the pricing.
- Your price list keeps changing. Stabilize it first; otherwise you will spend more time fixing the workflow than writing quotes.
To choose the tool that will run this chain, my n8n vs Make vs Zapier comparison covers each one's pricing and how it counts usage. An eight-step chain like this one counts as a single execution in n8n.
Sources checked on October 17, 2026
- n8n, Google Docs node documentation
- n8n, Google Drive node file operations (Copy, Download and conversion)
- n8n, pricing page (executions)
Frequently asked questions
Can you generate a quote automatically from a website form?
Yes. The form sends its data to n8n, which calculates the amounts, fills in a Google Docs template, exports it as a PDF and emails it. The price must be calculable from what the client enters.
Do you need to code to automate quotes with n8n?
Not for most of it: the Google Drive, Google Docs and Gmail nodes are set up in the interface. Calculating the amounts often needs a small formula or a few lines of code, especially if your prices have minimums or discounts.
Can you automate quotes currently made in Excel?
Yes, by moving the Excel calculation logic into n8n and the layout into a Google Docs or Word template. The longest part is often clarifying the pricing rules that were hidden in the formulas.
Can the automated quote go out without me reviewing it?
Yes, if your prices are fully calculable. I still recommend starting with one-click approval for a few weeks, then switching to direct send once no more corrections are needed.
How long does it take to set up this workflow?
For a simple quote with an existing template, usually one to two weeks, testing included. The timeline depends mostly on how clear your pricing rules are at the start.