Quick overview This workflow reads page URLs from Google Sheets, fetches each page to extract schema and SEO freshness signals, uses OpenAI GPT-4o-mini to assess entity consistency and generate recommended JSON-LD, then writes an audit row with scores and prioritized gaps back to Google Sheets. How it works Runs manually to start an audit of all rows in the Google Sheets pages tab. Fetches each page_url over HTTP and parses the HTML to extract JSON-LD schema types, dates, author signals, canonical/robots tags, title/H1 query match, and a short content excerpt. Sends the extracted signals and excerpt to OpenAI (gpt-4o-mini) to score entity consistency, rank the biggest citation-impact gaps, and (when needed) generate a paste-ready JSON-LD block using placeholders for unknown values. Combines a deterministic technical checklist score with the OpenAI entity score into a weighted overall audit score and formats the top gaps and issues. Appends the full audit result (including scores, gaps, and recommended JSON-LD) to the Google Sheets audit tab with the run date. Setup Create an OpenAI HTTP Header Auth credential with Authorization: Bearer for calls to the Chat Completions API.
Tags
Related workflows
See all Google Sheets→Generate and vet ad creative with OpenAI, Spendict, Google Sheets, and Slack
Quick overview This workflow collects a product brief via an n8n form, uses OpenAI to generate ad variants, gates each one with Spendict run/fix/kill scoring, auto-rewrites fixable ads, logs approved results to Google Sheets, and posts an approval count to Slack. How it works Receives a product brief from an n8n form submission with product, platform, audience, and desired variant count. Sends the brief to OpenAI Chat Completions to generate multiple ad variants (headline + primary text) in JSON. Splits the OpenAI response into individual variants and submits each one to Spendict’s /assess endpoint for a launch recommendation and score. Routes variants by Spendict verdict: “run” is accepted, “fix_first” is rewritten with the prioritized fixes and re-scored by Spendict, and “kill” is collected as rejected output. Combines accepted and auto-fixed variants and appends them as rows in Google Sheets with status, copy, platform, verdict, and score. Aggregates the logged approved variants and posts a summary message to Slack via an incoming webhook. Setup Add HTTP Header Auth credentials for OpenAI (Authorization: Bearer ) in both OpenAI HTTP Request steps. Add HTTP Header Auth credential
Monitor ad campaign health daily with Spendict, Google Sheets, and Slack
Quick overview This workflow runs every morning to read ad campaign metrics from Google Sheets, send each campaign to Spendict for performance diagnosis against benchmarks, log the verdicts back to Google Sheets, and post Slack alerts when a campaign needs attention. How it works Runs daily at 08:00 on a schedule trigger. Reads campaign metric rows from a Google Sheets spreadsheet. Builds a Spendict request per campaign by normalizing platform/objective fields and including only numeric metrics present in each row. Sends each campaign’s metrics to the Spendict analyze-performance API to get a verdict, score, bottleneck, and diagnosis. Routes results by verdict so healthy or insufficient-data campaigns are only logged, while fix_first and kill_or_rebuild campaigns are also prepared for alerting. Appends a dated health-check row for every campaign to a Google Sheets “health log” sheet. Posts a Slack Incoming Webhook message for fix_first and kill_or_rebuild campaigns including the score, primary bottleneck, and diagnosis. Setup Add Google Sheets credentials and select the document and sheet for both reading campaign metrics and appending to the health log. Ensure your metrics sheet h
Repurpose blog posts into social content with Gemini, Google Sheets, and Slack
Quick Overview This workflow runs daily, reads your blog RSS feed, uses Google Gemini to repurpose the latest posts into Twitter/X and LinkedIn drafts in your brand voice, then appends the drafts to Google Sheets and posts them to a Slack channel for review. How it works Runs every day on a schedule and reads items from your blog’s RSS feed. Keeps only the three most recent posts to process. Builds a prompt that includes your brand voice, hashtags, and each post’s title, URL, and excerpt. Sends the prompt to the Google Gemini API to generate Twitter/X and LinkedIn copy formatted as JSON. Parses the Gemini response into separate twitter and linkedin draft fields. Appends the drafts to a Google Sheets worksheet and posts the formatted drafts to a Slack channel for review. Setup Add credentials for the Google Gemini (PaLM) API, Google Sheets OAuth2, and Slack OAuth2. Paste your blog RSS feed URL in the RSS reader step. Update the brand voice text and default hashtags to match your tone. Select the target Google Sheets spreadsheet and worksheet (for example, a “Social Drafts” tab) where drafts are appended. Choose the Slack channel where draft messages are posted.