What this workflow does
This workflow fetches Google Search Console data and adds it to Google Sheets automatically.
It gets keyword queries, page reports, and daily performance data for the last 30 days.
The data is cleaned and put into three different tabs in Google Sheets.
This saves time by stopping manual downloads and copy-pasting.
The workflow runs on a set schedule and works without user input once set up.
Who should use this workflow
People who manage SEO and want to avoid long manual work collecting Search Console data.
It helps SEO specialists, marketing teams, or agencies with multiple websites.
It is for users who want data automatically sent to Google Sheets for easier reporting.
Tools and services used
- n8n: Runs the automation workflow.
- Google Search Console API: Provides SEO performance data.
- Google OAuth2 credentials: To authorize access securely.
- Google Sheets API: To add or update data in spreadsheets.
Inputs, processing steps, and outputs
Inputs
- The website domain name registered in Search Console.
- The number of days to pull data for, often 30.
- Google OAuth2 credentials with access to Search Console and Sheets.
Processing steps
- The workflow triggers on a schedule (such as daily or weekly).
- It sends three POST requests to Search Console API to get data by query, page, and date.
- Responses have nested arrays; those are split into single entries.
- Fields from responses are renamed for clarity like “Keyword”, “Clicks”, “CTR.”
- Data is sent to Google Sheets nodes to update or append rows in separate tabs.
Outputs
- Google Sheets with up-to-date tabs named Queries, Pages, and Dates.
- Each tab has clean, structured data ready to use for SEO reports.
Beginner step-by-step: How to run this workflow in n8n
1. Import the workflow
- Download the workflow file using the Download button on this page.
- In the n8n editor, click on “Import from File.”
- Select the downloaded workflow file to add it to your n8n instance.
2. Configure credentials
- Add Google OAuth2 credentials for Search Console and Google Sheets with proper scopes.
- Edit the Set your domain node. Put your website domain as it appears in Search Console.
- If needed, change the number of days to fetch data (default is 30).
- In Google Sheets nodes, set your spreadsheet ID and sheet names like “Query”, “PAGES”, and “Dates”.
- Make sure your Google Sheets is shared with your OAuth service account email.
3. Test and activate
- Run the workflow manually one time to check if data retrieves and sends correctly.
- Look at execution logs for errors and fix if any appear.
- Once tests are successful, switch on the Schedule Trigger to run the workflow automatically.
- Monitor logs regularly for any run failures.
If using self-host n8n, more setup may be needed – see self-host n8n for advice.
Common problems to watch for
- Getting “403 Forbidden” means OAuth scopes or credentials are wrong.
- Empty data after splitting rows means API response has no rows or split node setup is incorrect.
- No data in Sheets usually means no sharing permission or wrong spreadsheet/tab names.
- Misspelled domain causes Search Console API to fail.
Ways to customize this workflow
- Change the number of days in the Set your domain node to get more or less data.
- Add more dimensions like “device” or “country” in the search request bodies to get detailed reports.
- Change Google Sheets tabs and add columns to capture additional data.
- Adjust the schedule trigger to run hourly, weekly, or monthly.
- Make domain dynamic by using input nodes or API calls for multiple sites.
Summary of results and benefits
✓ Saves hours of manual data export and copy-pasting.
✓ Reduces errors from manual work.
✓ Gives fresh, organized SEO data every time it runs.
✓ Produces three tabs in Google Sheets with keyword, page, and daily metrics.
✓ Runs fully automatically after setup.
