n8n templates
Six finished n8n workflows. Download the file, import it, paste your API key, and it runs. Each one ends in Google Sheets, so you get a spreadsheet that fills itself up.
None of them needs an AI model. They use n8n’s MCP Client Tool node, which calls one Scrapewise tool directly with the arguments in the file. No OpenAI key, no AI Agent node, no prompt to tune.
If you want to build your own workflow instead, start at Connect n8n.
The six
| # | Template | What you get | Runs | Tool it calls |
|---|---|---|---|---|
| 1 | Local business lead list | Name, address, phone, website, rating, reviews and category for a search in a place | When you press the button | find_local_businesses |
| 2 | Competitor price monitor | Every product where a competitor is cheaper than you, with the gap in € and % | Daily, 08:00 | scrapewise_get_scraper_data_group_client |
| 3 | Amazon price tracker | Title, ASIN, price, rating and reviews for your keywords, one dated row each | Daily, 07:00 | search_amazon |
| 4 | Google rank tracker | The position your domain holds for each keyword, or “not in top results” | Daily, 06:00 | google_search |
| 5 | Google review watcher | Every review of the places you watch, plus a Slack alert on the bad ones | Daily, 09:00 | scrapewise_run_scraper_url_list |
| 6 | YouTube keyword watch | Which videos rank for your topics, with your own channel flagged | Weekly, Monday 09:00 | scrapewise_run_scraper_url_list |
Before you start
- A Scrapewise account with some wallet balance. See Sign up.
- An API key. Templates 1, 3 and 4 work with
LLM_READ. Templates 2, 5 and 6 needLLM_FULL. See Scopes. - n8n 1.80 or newer. Older versions do not have the MCP node.
Import a template
- Download the JSON file from the section below.
- In n8n, open the workflow menu (top right) → Import from File.
- Open the node called Find local businesses, Search Amazon, Search Google,
Read matched rows, Start the review read or Start the YouTube search — whichever the template
has — and add a Bearer Auth credential with your API key as the token. Paste the key on its own,
without the word
Bearer. Full walk-through: Connect n8n. - Open the Google Sheets node, pick your Google account, and set the spreadsheet id and tab name.
- Open the node named Search settings, Monitor settings, Keywords and marketplace, Keywords and domain, Places to watch or Keywords to watch and put your own values in.
- Every template starts with a sticky note titled Read me first with the same steps inside n8n.
Each template carries a credential-id placeholder and YOUR_SPREADSHEET_ID. n8n shows those nodes with a
warning triangle until you replace them — that is the checklist.
1. Local business lead list
Download: 01-google-maps-leads-to-google-sheets.json
Searches Google Maps for a trade in a place and appends every business to a sheet.
| Trigger | Manual — you press Execute workflow |
| Columns | Name, Address, Phone, Website, Rating, Reviews, Category |
| Cost | 10 credits per call = €0.0015 for up to 20 places |
| Key scope | LLM_READ |
Set query, location, country, language and max_results in Search settings. One call returns up to
20 places.
Google Maps holds no e-mail addresses, so none are returned. The Website column is the starting point if you
need e-mail — add a step of your own after the sheet.
To see the price before you spend anything, set quote_only to true in Search settings. The workflow then
writes one row holding the quote and your wallet balance instead of leads.
2. Competitor price monitor
Download: 02-competitor-price-monitor-with-matching.json
Reads a price-monitor group you already have in Scrapewise, groups the rows by the column that matches your product to the competitor’s (usually EAN), and keeps only the products where a competitor is cheaper than you. Writes the gaps to a sheet and sends one Slack message with the ten biggest.
| Trigger | Daily, 08:00 |
| Columns | Date, Match key, Product, My price, Cheapest competitor, Their price, Gap €, Gap % |
| Cost | Free — it reads rows you already paid to scrape |
| Key scope | LLM_FULL |
This template does not scrape. It reads what your scrapers already collected, so set the scrapers up first — the build-scrapers skill does that for you, or do it in the portal.
In Monitor settings, put in:
| Setting | What it is |
|---|---|
groupId | The group holding your prices and your competitors’ |
matchColumn | The column both sides share, usually ean |
shopColumn | The column saying which shop a row came from |
priceColumn | The column holding the price |
myShop | The value in shopColumn that means you |
rowsToRead | How many rows to read per run |
If a column name is wrong the workflow stops and the error message lists the column names the group actually has, so you can copy the right one straight out of it.
Prices written as 1.234,56 and 1,234.56 are both read correctly.
3. Amazon price tracker
Download: 03-amazon-price-tracker-to-google-sheets.json
Every morning, searches Amazon for each of your keywords and appends what it sells, with the date. Leave it running and the sheet becomes a price history you can chart.
| Trigger | Daily, 07:00 |
| Columns | Date, Title, ASIN, Price, Rating, Reviews, Link |
| Cost | 1 credit per result page = €0.00015 per keyword per page |
| Key scope | LLM_READ |
Set queries, marketplace and pages in Keywords and marketplace.
Marketplaces: com, co.uk, de, fr, it, es, ca, com.au, co.jp, in, com.br, com.mx, nl,
sg, ae, sa, pl, se, com.tr, eg, com.be.
One keyword and one page answers straight away. Two or more run as a background job, so the template has an
If node and a Wait node that pick the rows up with get_results. If a long list is not finished in
time, raise the wait.
One answer carries one page of rows. If Get job results comes back with truncated: true and a nextPage,
there are more rows waiting. The template saves the first page, which is plenty for a handful of keywords. For a
long list, send that nextPage value back into Get job results as page and keep going until truncated
is false.
4. Google rank tracker
Download: 04-google-serp-rank-tracker.json
Every morning, searches Google for each keyword, looks for your domain in the results, and writes the position
you hold — or not in top results.
| Trigger | Daily, 06:00 |
| Columns | Date, Keyword, Country, Position, URL, Page title |
| Cost | 10 credits per keyword = €0.0015 per keyword per day |
| Key scope | LLM_READ |
Set domain, keywords, country and language in Keywords and domain.
google_search with type web takes one keyword per call, so the template loops over your list one keyword at
a time with a Loop Over Items node. Ten keywords a day costs €0.015.
The domain match ignores www., so scrapewise.ai matches https://www.scrapewise.ai/pricing.
5. Google review watcher
Download: 05-google-maps-reviews-monitor.json
Every morning, reads the reviews of the places you list, saves them all to a sheet, and sends a Slack message for every review at or below your star threshold.
| Trigger | Daily, 09:00 |
| Columns | Date, Place, Stars, Author, Review, Posted, Review id, Needs attention |
| Cost | From €0.00015 per place read. The first step answers with estimatedMicroCents — what that run will cost. 1,000,000 micro-cents = €0.01 |
| Key scope | LLM_FULL |
Create an empty group of its own in the portal for this workflow and put its id in Places to watch. The read step returns everything in the group, so a shared group would mix other data in.
Place URLs need the place’s data_id, and the link you copy out of the Google Maps address bar does not carry
one. Run template 1 (or the find_local_businesses tool) for the business — every result has a data_id that
looks like 0x4692935f7b0b17f5:0xb136062b9dd26adb. Put it in a link of this shape, one per place:
https://www.google.com/maps/place/?data_id=0x4692935f7b0b17f5:0xb136062b9dd26adbEach run writes today’s reviews again, so a review appears once per run with that day’s date. Sort or pivot the sheet on Review id to see each review once.
Set alertAtOrBelowStars to the threshold you want — 3 means three stars and below get a Slack message.
force is on, so you get fresh reviews every day and every place is read and charged each run.
If the sheet comes out empty, raise the wait in Give it two minutes — a long list takes longer.
6. YouTube keyword watch
Download: 06-youtube-keyword-watch.json
Every Monday, searches YouTube for each of your keywords and saves what comes up. Run it weekly and the sheet shows which videos are gaining on your topics, and which of them are yours.
| Trigger | Weekly, Monday 09:00 |
| Columns | Date, Title, Channel, Views, Length, Published, Link, Mine |
| Cost | From €0.00015 per search read. The first step answers with estimatedMicroCents |
| Key scope | LLM_FULL |
Create an empty group of its own in the portal and put its id in Keywords to watch, same as template 5.
Put your keywords in plain words — the workflow turns each one into a YouTube search link itself. Add your own
channel name as myChannel and the Mine column flags your videos.
Templates 5 and 6 both send their list under a name. If you add or remove a place or a keyword later, change
that name too — Scrapewise refuses a different list sent under a name it already knows.
How the templates are put together
Useful if you want to change one, or copy the pattern into a workflow of your own.
| Piece | What it does |
|---|---|
MCP Client Tool node, HTTP Streamable, Bearer Auth | Calls one named Scrapewise tool. No AI model involved |
| JSON input, not fields | The arguments are written as JSON so you can see exactly what is sent |
| A Code node after every call | Parses the answer and unwraps scraped text before it reaches the sheet |
| A sticky note on every canvas | Setup steps and the cost, inside n8n |
Three details the Code nodes handle for you:
- The answer arrives in one of two shapes. Already parsed in
structuredContent, or as a string incontent[0].text, depending on your n8n version. Every Code node reads both. - Scraped strings are wrapped.
{ "type": "scraped", "content": "…", "origin": "…" }marks text a stranger wrote on a web page. The Code nodes unwrap it to a plain string. Never let a later AI step treat it as an instruction — see Prompt injection. - Reading a group’s rows returns a page. The rows are under
content, notrows.
Templates 2, 5 and 6 point at https://mcp.scrapewise.ai/mcp?toolsets=outcome,admin, because they use tools
that are not on the short data list. Templates 1, 3 and 4 use the plain address. See
the toolsets switch.
Good to know
- Check the price first. Templates 1 and 3 have a
quote_onlysetting: turn it on and the call returns the price and your wallet balance without scraping. Templates 5 and 6 answer withestimatedMicroCentsbefore the run starts. - Start with one. One keyword, one place, one product. The cost per run is then obvious and the schedule can be turned on afterwards.
- A retry does not charge twice. Add the same
idempotency_keyinsidebodyand identical requests within 24 hours are charged once. - Three jobs at a time. An account can have three background jobs running. A fourth is refused until one finishes.
- Change the schedule freely. Every schedule in these files is a plain n8n Schedule Trigger — open it and set whatever you want, or swap it for a webhook.
What’s next
- Build your own n8n workflow → Connect n8n
- Every tool, with prices → Tool catalog
- Set the scrapers up for template 2 → Build competitor price scrapers
- Why scraped text is wrapped → Prompt injection