Quick overview
This workflow reads a keyword list from Google Sheets, gets the AI search volume for each keyword using the DataForSEO AI Optimization API, and writes a ranked list back to Google Sheets, so you know which queries to optimize for AI search (GEO) first.
How it works
- Triggers on your preferred schedule (weekly by default) or manually.
- Fetches keywords from the "Keywords" tab of your Google Sheet.
- Cleans and deduplicates the list and splits it into batches of up to 1,000 keywords (the API limit per request).
- Gets the AI search volume and monthly AI search history for each keyword using the DataForSEO AI Optimization API.
- Compares the average of the last 3 months with the 3 months before to label the trend as Rising, Flat, or Declining. Volume alone can mislead: a keyword whose AI demand is growing is often a better bet than a bigger one that has gone flat.
- Assigns a priority (Optimize first, Rising opportunity, Watch – declining, Backlog, No AI demand) and saves the results, sorted by AI search volume, to the "AI Priorities" tab. Rows are matched by keyword, so re-runs update existing rows instead of adding duplicates.
Setup
- Make a copy of the example Google Sheet and add your keywords to the Keyword column of the Keywords tab.
- Install the verified community node n8n-nodes-dataforseo.
- Create or select your DataForSEO connection (use your API login and password).
- Create or select a Google Sheets connection.
- In the Config node, paste your sheet URL into
sheet_url and set location_name and language_name (see supported locations and languages).
- Set the preferred workflow schedule.
Requirements
- DataForSEO account with API access
- Google account with Google Sheets
Customization
top_n_optimize_first: how many top keywords by AI search volume can get the Optimize first priority (default 20).
trend_threshold_pct: the percentage change that counts as Rising or Declining (default 20).
- Change the schedule in Run weekly, or connect another source of keywords instead of Google Sheets.