Quick Overview
This workflow runs manually to build a drive-time trade area around a location, pull Google Ads Keyword Planner search volume and bid ranges for configured keywords, model a conversion funnel, and generate a PDF report with a boundary map using OpenRouteService, OpenStreetMap Nominatim, Geoapify, and PDFShift.
How it works
- Starts when you run the workflow manually and loads the location, trade-area, Google Ads, and funnel-assumption settings.
- Requests a drive-time isochrone polygon from OpenRouteService and samples points inside the polygon.
- Reverse-geocodes the sampled points with OpenStreetMap Nominatim to collect unique ZIP codes within the trade area.
- Looks up Google Ads geo target constants for those ZIP codes and compiles the configured keyword list.
- Calls the Google Ads API Keyword Planner historical metrics endpoint to fetch average monthly searches and top-of-page bid ranges per keyword.
- Calculates low and high price funnel scenarios per category (impressions, clicks, landing page views, actions, customers, spend, and revenue) and generates a Geoapify static map URL for the boundary.
- Downloads the map image, renders an HTML report with tables and funnel charts, and converts it to a PDF using PDFShift.
Setup
- Add Google Ads OAuth2 credentials and provide your Google Ads customer ID (and optional login customer ID) plus a valid Google Ads developer token.
- Create an OpenRouteService API key and configure the HTTP authorization header used to fetch the drive-time polygon.
- Ensure OpenStreetMap Nominatim usage is allowed for your volume and keep the workflow’s User-Agent header set to your application.
- Create a Geoapify API key (static map) and a PDFShift API key, then configure the HTTP authentication used to download the map and convert HTML to PDF.
- Update the configuration values (address label, coordinates, drive time, keyword categories, funnel rates, and set pdfSandbox to false for production PDFs) before running the workflow.