n8n

How to Automate YouTube SEO and Publishing?

Grow your channel with less manual work. This automation finds your newest upload, writes a clear description, suggests strong tags, and updates video metadata. It also schedules private videos for publish dates so your content goes live on time. Ideal for creators, teams, and agencies that upload often and want consistent SEO.

The flow runs on a daily schedule, and you can also test it on demand. It pulls recent videos from YouTube, removes repeats from earlier runs, and checks if there is a new item to process. A transcript is scraped through an API call, then formatted for clean prompts. OpenAI drafts the description and title, and Google Gemini helps generate keyword tags. The result is pushed back to YouTube, and short waits are added to avoid rate limits. A separate path scans private or not listed videos and sets the publishAt date when needed.

Set YouTube OAuth, OpenAI and Google Gemini API keys, and an Apify token for the transcript call. Expect faster uploads, steady SEO quality, and fewer manual edits. This is useful for scheduled releases, daily content, or batches managed by a small team.

What are the key features?

  • Daily schedule plus manual test trigger to control when runs happen.
  • YouTube API actions to list videos, get details, update metadata, and set publish dates.
  • Remove duplicates to avoid processing older videos again.
  • Transcript retrieval via HTTP Request with an API token, then cleaned for prompt quality.
  • OpenAI generates SEO friendly descriptions and titles from the transcript.
  • Google Gemini supports tag generation through an agent prompt for comma separated tags.
  • Wait steps space API calls to reduce rate limit issues.
  • Batch loops handle multiple items and filter for private or not listed videos.

What are the benefits?

  • Reduce manual video SEO work from 2 hours to 10 minutes
  • Automate 90% of metadata tasks including title, description, and tags
  • Improve metadata consistency by 95% across uploads
  • Cut missed publish times by scheduling private videos reliably
  • Handle up to 10 times more uploads without extra staff
  • Connect YouTube, OpenAI, Google Gemini, and Apify 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 YouTube, OpenAI, Google Gemini and Apify. See the Tools Required section above for links to create accounts with these services.
  3. In the n8n credentials manager, create YouTube OAuth2 credentials. Double click any YouTube node and in the credential dropdown select Create new credential, then follow the on screen steps to connect your channel.
  4. In the credentials manager, add your OpenAI API Key. Double click the OpenAI nodes, choose Create new credential, paste your API key from the OpenAI account API page, and save.
  5. For Google Gemini, create an API key in Google AI Studio. In n8n, open the Gemini node credential dropdown, click Create new credential, paste the key, and save.
  6. Create an Apify API token in your Apify account. Open the HTTP Request node used for transcript, add the token in the Authorization header as Bearer YOUR_TOKEN, and save.
  7. Open the Fetch Latest Videos node and set Limit to the number of uploads you want to process. Keep Order set to date for newest first.
  8. Check the Remove Duplicates node. If you want to process many uploads once, detach it or use its Clear Database option, then reattach after the initial run.
  9. Open the Get Transcript and Adjust Transcript Format nodes and confirm the endpoint, headers, and expected fields match your Apify actor or API response.
  10. Review the prompts in the Create Description, YT Title, and YT Tags nodes. Adjust tone, length, and keyword rules to fit your channel style.
  11. Ensure private videos that need scheduling include a valid publishAt date. Scheduling works only if the video is set to Private with a publishAt timestamp.
  12. If transcripts fail to load, set the video to Unlisted or Published until the transcript is fetched, then switch back as needed.
  13. Run a manual test using the manual trigger. Check that metadata updates in YouTube and that tags are comma separated. Review execution logs for any errors.
  14. Enable the Every Day schedule trigger. Monitor the first week of runs, then tune wait times if you see rate limit errors.

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 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.

OpenAI

Sign up

Pay-as-you-go: GPT-5 at $1.25 per 1M input tokens and $10 per 1M output tokens

YouTube

Sign up

Free: $0, default quota 10,000 units/day

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.