n8n

How to Automate Linear Visual Regression Alerts?

Keep your website looking right without manual checks. This workflow captures screenshots of your pages, compares them to a saved base image, and opens a clear issue in Linear when it spots a visual change. It works well for product teams, QA, and marketers who maintain landing pages and need fast feedback.

Two parts run together. First, it builds a base library: URLs live in Google Sheets, screenshots are created with an external screenshot service, and files are stored in Google Drive. The sheet is updated with Drive IDs so each page has a base image. Second, a schedule pulls the same sheet, takes fresh screenshots, and compares both images using a vision model. The model returns structured results like text, color, image, number, or position changes. Results are merged back to the right row, clean items are filtered out, and all changes are grouped into one Linear issue with a readable summary.

Setup needs Google Sheets, Google Drive, a screenshot service account, a Linear API key, and access to a vision model. Expect faster reviews, fewer misses, and a single report your team can act on. It is useful for release checks, content updates, and brand compliance across many pages.

What are the key features?

  • Scheduled runs pull a list of URLs from Google Sheets for testing
  • Generates base screenshots and stores them in Google Drive with IDs saved back to the sheet
  • Calls a screenshot service via HTTP and waits for completion using built in webhooks
  • Downloads new screenshots and pairs them with the matching base image per URL
  • Uses a vision model to compare two images and returns structured JSON of detected changes
  • Filters out pages with no change and aggregates the findings for easy reading
  • Creates a formatted Linear issue that lists all pages with detected shifts
  • Loops over items safely with batching and pause steps to avoid rate limits
  • Merges data from multiple nodes to keep each result linked to the correct row

What are the benefits?

  • Reduce manual visual checks from hours to minutes by comparing pages on a schedule
  • Automate up to 90 percent of repetitive QA work across many webpages
  • Improve accuracy by removing human error in spotting small layout or color shifts
  • Handle hundreds of pages by running in batches and waiting for results automatically
  • Connect Google Sheets, Google Drive, Apify, Google Gemini, and Linear in one flow

How do you set it up?

  1. Import the template into n8n: Create a new workflow in n8n > Click the three dots menu > Select 'Import from File' > Choose the downloaded JSON file.
  2. You'll need accounts with Google Sheets, Google Drive, Linear, Apify and Google Gemini. See the Tools Required section above for links to create accounts with these services.
  3. In the n8n credentials manager, create Google Sheets OAuth2 and connect your Google account. Double click the Google Sheets nodes and pick your new credential.
  4. Create Google Drive OAuth2 in n8n and connect the same Google account. Open the Google Drive nodes and select this credential. Confirm the target folder ID matches your Drive folder for screenshots.
  5. Sign in to your screenshot service and create an API key. In n8n, create an HTTP credential for Apify using API Key auth. Open the Run Webpage Screenshot nodes and choose this credential.
  6. In Linear, create a personal API key in your workspace settings. In n8n, add a Linear credential with this key and select it in the Create Report node.
  7. For the vision model, add Google Gemini credentials in n8n. Open the Google Gemini Chat Model node and select this credential. Keep the model name as set.
  8. Open the Get URLs with Missing Base Images and Get Webpages List nodes. Set the Spreadsheet ID and the correct sheet name. Ensure the columns include url and base.
  9. Check the Upload to Drive and Update Base Image nodes. Confirm the Drive folder ID and the column mapping so the uploaded file ID updates the base column for the right row.
  10. Open the Wait nodes and copy the webhook URLs if your screenshot service supports callbacks. Configure the actor or task to call the URL when the screenshot is ready. If callbacks are not used, keep the polling or delay as configured.
  11. Click Test workflow to generate base images for any URLs missing a base. Verify that Google Drive fills with images and the base column in the sheet updates with file IDs.
  12. Enable the Schedule Trigger to run the visual checks. After the first run, review the Linear issue and confirm it lists only pages with detected changes and shows clear notes.
  13. If no issues appear, ensure the Combine Screenshots and Visual Regression Agent nodes receive two images. If errors occur, check API keys, folder permissions, and sheet column names.

Tools Required

$24 / mo or $20 / mo billed annually to use n8n in the cloud. However, the local or self-hosted n8n Community Edition is free.

Apify

Sign up

Free plan: $0 / mo with $5 monthly platform credits; API access via token

Google Drive

Sign up

Drive API: $0 (no additional cost; quota-limited)

Google Gemini

Sign up

Free tier: $0 via Gemini API; e.g., Gemini 2.5 Flash-Lite free limits 1,000 requests/day (15 RPM, 250k TPM). Paid from $0.10/1M input tokens and $0.40/1M output tokens.

Google Sheets

Sign up

Free: $0 (Google Sheets API usage has no additional cost; quota limits apply)

Linear

Sign up

Free: $0 / mo, includes API access (2 teams, 250 issues)

Similar Templates

Join Futurise to access 1,200+ automation templates

Get instant access to ready-made automation workflows for n8n, Make.com, AI agents, and more. Download, customise, and deploy in minutes.