Quick overview
This workflow collects local business leads from Google Maps using Figranium based on a category and location submitted via an n8n form, then deduplicates results against an existing Google Sheets list and appends only new leads to the same spreadsheet.
How it works
- Receives a form submission with a business category and location.
- Reads the existing leads from a Google Sheets worksheet and aggregates them into a single list for comparison.
- Runs a Figranium Maps Scraper task with the submitted category and location to fetch matching Google Maps business results.
- Splits the scraped results into individual lead items with fields like name, rating, address, phone, and website.
- Checks each scraped lead against the cached Google Sheets list by business name and filters out leads that already exist.
- Appends each new lead to Google Sheets, and ignores any duplicates.
Setup
- Install and run a Figranium instance, import a Google Maps scraping preset/task, and create an n8n Figranium credential with your instance URL and API key.
- Add Google Sheets OAuth2 credentials in n8n and select the target spreadsheet and worksheet in both Google Sheets steps.
- Ensure your sheet has columns for Name, Rating, Address, Phone, and Website so appended leads map correctly.
- Publish the workflow to enable the form and use the generated form URL to submit category and location searches.
Requirements
- A running Figranium instance
- The free Figranium Maps Scraper preset
- A Figranium API key
- A Google account with access to Google Sheets
- An n8n instance with the verified Figranium node installed
Additional info
Figranium is free and open-source and runs on your own infrastructure. This workflow does not require a paid scraping API or per-result credits. Duplicate detection is based on business name, and existing leads in the selected Google Sheet are skipped.