🔓 Unlock all 10,000+ workflows & prompts free Join Newsletter →
✅ Full access unlocked — explore all 10,000 AI workflow and prompt templates Browse Templates →
Home n8n Workflow
January 22, 2026

Google Sheets + Gmail: book price reports, sorted

Lisa Granqvist Partner Workflow Automation Expert

You grab prices from a website, paste them into a spreadsheet, tidy the formatting, then realize you copied the wrong title. Again. It’s not “hard” work, but it’s the kind that quietly steals your afternoon.

This hits virtual assistants and researchers constantly. But data analysts and small agency teams feel it too. With this Sheets Gmail automation, you drop a book listing URL into Google Sheets and get a clean, sorted CSV report in your inbox.

Below you’ll see exactly what the workflow automates, what results you can expect, and what you’ll need to run it reliably without babysitting it.

How This Automation Works

The full n8n workflow, from trigger to final output:

n8n Workflow Template: Google Sheets + Gmail: book price reports, sorted

The Problem: Manual price tracking turns into busywork

If you track book prices (or any catalog-style product pricing), the annoying part is never “finding” the page. It’s the cleanup. You copy titles, paste prices, strip currency symbols, fix broken rows, then sort by price so a client can see what’s most expensive at a glance. Do this across a few pages and you burn about 2 hours a week on tasks that don’t improve the final insight at all. Worse, one missed item or one paste into the wrong column makes your report feel sloppy, which is the last thing you want when you’re sending updates to stakeholders.

It adds up fast. Here’s where it usually breaks down.

  • You end up reformatting scraped text into something spreadsheet-friendly every single time.
  • Sorting by price becomes a manual chore, and it’s easy to miss one expensive outlier.
  • Copy/paste errors creep in when you’re moving between browser tabs, Sheets, and email drafts.
  • Client updates get delayed because the “report” is still being assembled at the last minute.

The Solution: Google Sheets → scrape → CSV → Gmail delivery

This workflow turns a messy, repetitive reporting task into a simple “add a URL and wait” process. It starts by watching your Google Sheet for a new row containing a product listing URL (like a category page of books). Once a URL appears, n8n sends it to Dumpling AI to fetch cleaned HTML content, which is much easier to parse than raw page source. The workflow then extracts each book block from the page using CSS selectors, pulls out the title and the price for each item, and sorts everything by price in descending order. Finally, it converts the structured data into a CSV file and emails it to you through Gmail as an attachment, ready to forward to a client or drop into a shared folder.

The workflow starts when a new URL is added to Google Sheets. Dumpling AI retrieves the page, then the HTML parsing steps extract title and price cleanly. From there, n8n sorts the list and sends a finished CSV to Gmail with no extra handling.

What You Get: Automation vs. Results

Example: What This Looks Like

Say you track 10 book listing pages each week for a client. Manually, you might spend about 10 minutes per page copying titles and prices, then another 20 minutes cleaning and sorting, which is roughly 2 hours total. With this workflow, the “work” is adding 10 URLs to Google Sheets (maybe 5 minutes), then waiting for the CSV emails to land. Even if scraping and processing takes another 10–15 minutes in the background, you still get almost all of that 2 hours back.

What You’ll Need

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • Google Sheets to store the URLs that trigger runs.
  • Gmail to email CSV reports automatically.
  • Dumpling AI API key (get it from your Dumpling AI dashboard).

Skill level: Beginner. You’ll connect accounts, paste CSS selectors, and test one sample URL.

Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).

How It Works

A new URL appears in Google Sheets. The workflow uses a Google Sheets trigger that watches for new rows, so you don’t need to click “run” or export anything.

The page gets scraped and cleaned. n8n sends the URL to Dumpling AI via an HTTP request, asking for cleaned HTML output, which is usually more stable for parsing than raw markup.

Book data is extracted and sorted. An HTML parsing step grabs each book container (for example, “.row > li”), then another parsing step pulls the title and price fields (like “h3 > a” and “.price_color”). Once the list is structured, n8n sorts by price in descending order.

A CSV report is built and emailed. The workflow converts the JSON into a CSV file, then Gmail sends it as an attachment to the address you choose.

You can easily modify the fields you extract to include author, availability, or product URL based on your needs. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Google Sheets Trigger

Set up the trigger so the workflow starts when a new row is added to your sheet of book URLs.

  1. Add and open Sheet Row Watcher.
  2. Set Event to rowAdded.
  3. Select your spreadsheet in Document using the URL https://docs.google.com/spreadsheets/d/1pb4WLqv2EruLM1z9-utehcINolSj0vlUqZionyLoRUs/edit?usp=drivesdk.
  4. Select the sheet name Sheet1 in Sheet Name.
  5. Set the polling to Every Minute in Poll Times.
  6. Credential Required: Connect your googleSheetsTriggerOAuth2Api credentials.
Ensure the new row includes a valid URL in the column your workflow expects, or the downstream scrape request will fail.

Step 2: Connect the HTML Fetch Service

Configure the HTTP request to scrape the webpage specified in the new sheet row.

  1. Open Dumpling HTML Fetch and set Method to POST.
  2. Set URL to https://app.dumplingai.com/api/v1/scrape.
  3. Enable Send Body and Send Headers.
  4. Set Body Content Type to JSON.
  5. Set JSON Body to { "url": "{{ $('Sheet Row Watcher')}}", "format": "html", "cleaned": "True" }.
  6. Set Authentication to genericCredentialType and Generic Auth Type to httpHeaderAuth.
  7. Add a header parameter with Name Content-Type and Value application/json.
  8. Credential Required: Connect your httpHeaderAuth credentials (and httpBasicAuth if your endpoint requires it).
⚠️ Common Pitfall: The JSON Body uses an expression from Sheet Row Watcher. If the sheet row doesn't contain the URL in the expected field, the scrape request will return empty or error results.

Step 3: Set Up HTML Parsing and Item Splitting

Extract the book blocks and parse each book’s title and price.

  1. Open Capture Book Blocks and set Operation to extractHtmlContent.
  2. Set Data Property Name to content.
  3. In Extraction Values, set Key to books, CSS Selector to .row > li, Return Array to True, and Return Value to html.
  4. Open Split Book Items and set Field To Split Out to books.
  5. Open Parse Book Details and set Operation to extractHtmlContent.
  6. Set Data Property Name to books.
  7. In Extraction Values, add Key title with CSS Selector h3 > a and Return Value attribute using Attribute title.
  8. Add another extraction value with Key price and CSS Selector .price_color.
If your target site uses different HTML classes, update the CSS selectors in Capture Book Blocks and Parse Book Details accordingly.

Step 4: Configure Sorting and Email Output

Sort the parsed data, convert it into a CSV file, and email the report.

  1. Open Order by Price and set Field Name to price with Order descending.
  2. Open Build CSV File and keep the default settings to convert the incoming items into a file.
  3. Open Email CSV Report and set Subject to bookstore csv.
  4. Set Message to Hey, here's the scraped data from the online bookstore! and Email Type to text.
  5. In Attachments, ensure the binary attachment is enabled to include the CSV generated by Build CSV File.
  6. Credential Required: Connect your gmailOAuth2 credentials.
⚠️ Common Pitfall: If the attachment is missing, confirm Build CSV File runs before Email CSV Report and that the attachment binary property is selected.

Step 5: Test and Activate Your Workflow

Run a manual test and then activate the workflow for ongoing monitoring.

  1. Click Execute Workflow and add a new row with a valid book URL in your Google Sheet.
  2. Verify that Dumpling HTML Fetch returns HTML content, and that Parse Book Details outputs title and price fields.
  3. Confirm that Build CSV File produces a CSV file and Email CSV Report sends an email with the attachment.
  4. When the test succeeds, toggle the workflow to Active for production use.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Common Gotchas

  • Google Sheets credentials can expire or need specific permissions. If things break, check the n8n credential connection status and the Google account access first.
  • Dumpling AI scraping can fail if the site blocks bots or the URL redirects unexpectedly. When the HTML output looks empty, confirm the exact URL in your Sheet and test the Dumpling request with the same parameters.
  • Prices are often extracted as strings, not numbers. If your sort seems “wrong,” it’s usually because the currency symbol or text is still present, so adjust the parsing or add a cleanup step before sorting.

Frequently Asked Questions

How long does it take to set up this Sheets Gmail automation?

About 30 minutes if your accounts are already connected.

Do I need coding skills to automate sorted price reports?

No. You’ll mostly paste in credentials and confirm the CSS selectors match the site you’re scraping.

Is n8n free to use for this Sheets Gmail automation workflow?

Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in Dumpling AI usage credits per scrape request.

Where can I host n8n to run this automation?

Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.

Can I customize this Sheets Gmail automation workflow for extra fields like author and availability?

Yes, and it’s honestly the best way to get more value out of it. Add new CSS selectors in the “Parse Book Details” HTML parsing step to pull fields like author, availability, and the product link. If you want the email to go to a client automatically, keep the same CSV build step and just change the recipient in the Gmail node. You can also swap the “Order by Price” logic to sort alphabetically or by stock status if that’s what your report needs.

Why is my Gmail connection failing in this workflow?

Usually it’s expired OAuth access or missing Gmail permissions in your connected Google account. Reconnect the Gmail credential inside n8n, then run a single test URL to confirm the “Email CSV Report” step can send attachments. If your mailbox has stricter security settings, you may also need to allow the app connection in your Google account settings.

How many URLs can this Sheets Gmail automation handle?

A few hundred URLs per month is realistic on most setups, and self-hosting scales further if your server can handle the load.

Is this Sheets Gmail automation better than using Zapier or Make?

Often, yes, because this kind of workflow benefits from flexible parsing, sorting, and file-building in one place. Zapier and Make can do parts of it, but scraping + HTML parsing + sorting can get awkward (and expensive) once you go beyond simple two-step zaps. n8n also gives you the self-hosting option, which matters if you run lots of URLs or want fewer platform limits. If you only need a basic “new row → send email” flow, Zapier is fine. Talk to an automation expert if you want a quick recommendation for your exact volume.

Once this is running, “build the report” becomes “add the URL.” The workflow handles the repetitive parts so you can spend your time on the decisions the report is supposed to support.

Need Help Setting This Up?

Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.

Lisa Granqvist

Workflow Automation Expert

Expert in workflow automation and no-code tools.

×

Use template

Get instant access to this n8n workflow Json file

💬
Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Launch login modal Launch register modal