Who it's for
This workflow is for sales teams, marketers, and local SEO professionals who need to quickly collect and store business listings from Google Maps without manual copy-pasting.
How it works
- A user submits a web form with a city, country, and search query (e.g. "restaurants in Lyon, France").
- The inputs are normalized into structured fields (City, Country, Query) using a Set node.
- A new Google Spreadsheet is automatically created and named after the search parameters, and existing records are read.
- A POST request is sent to the Apify Google Maps scraper actor, returning up to 50 business listings matching the query.
- Key fields (title, price, category, address, phone, website, open/closed status) are extracted and mapped.
- Results are appended or updated in the Google Sheet, ready for use in outreach or analysis.
How to set up
- [ ] Configure the When Search Form Submitted node with your desired form fields.
- [ ] Connect your Google Sheets OAuth2 credentials in both Sheets nodes.
- [ ] Add your Apify API credentials to the Scrape Google Maps via Apify HTTP Request node.
- [ ] Verify the Apify actor ID in the POST URL matches your intended Google Maps scraper actor.
Requirements
- Google account with Google Sheets access
- Apify account with a Google Maps scraper actor
How to customize
- Extend the Build Listing Fields node to capture additional Apify fields such as ratings, review count, or opening hours.
- Adjust
maxCrawledPlacesPerSearch in the Apify request body to control the number of results returned.
- Replace the form trigger with a scheduled trigger to run recurring scrapes automatically.