To turn a YouTube video into a blog post, my n8n workflow pulls the transcript, has Claude write a research brief from it, writes the post in my blog’s exact layout, and saves it to WordPress as a draft. I read every draft before it goes anywhere, because the writer will fill a gap if you let it. The words are the ones I said on camera. This post walks through the build and gives you a generator that writes yours.

The words were already said
Writing blog posts is very time consuming. I film product reviews for the Amazon Influencer Program, a couple of minutes each, and every one of them has a blog post’s worth of opinion in it, said out loud, in my own words. Turning that into a written post is the part my brain wouldn’t do so easily. I’d sit down to write up a video I’d already made and stall on the blank page, even though I’d just said everything it needed to say.
So the workflow does that part. It takes my words from the video and turns them into written form. That’s basically the whole trick. I’m able to publish more posts than I ever managed by hand, and they still have my words in them, because the transcript is the only source it’s allowed to write from.
There was a version of this where I was a node in the middle. The workflow would pull the transcript, hand it to me, and I’d paste it into a chat, wait, and paste the post back. I used to do that. Now I don’t. The system has been tweaked a lot along the way, and it’s finally at a place where it’s running without all the copy and pasting. Of my 100 published reviews, 92 came out of a video this way.
What does a YouTube video to blog post workflow do?
It turns one link into one draft, with the transcript as the only source. One video goes through this, in order:
1. A checkbox on the video’s row in Airtable fires a webhook. 2. n8n fetches the row: the video link, the product name, the affiliate link. 3. If the brand asked for a live link, an email goes out with it. 4. A request to Supadata brings back the transcript as clean text. 5. If there’s no transcript, the run stops and emails me instead of writing. 6. Claude writes a short research brief: what the product is, what I said I liked and didn’t, the specs from the listing. 7. Claude writes the post as a block of JSON, one field per section of my layout. 8. A Code node turns the JSON into the exact block markup my theme uses. 9. WordPress gets a draft, Airtable gets the link, Asana gets a task, and the checkbox unticks itself.
Thirty-nine nodes, fifteen of them sticky notes explaining the other twenty-four to future me. The run is quick. Reading the draft takes longer, and it should.
Who should turn their YouTube videos into blog posts this way?
It’s for you if you talk in your videos and you’d publish more if the writing weren’t the bottleneck. Reviews are the obvious fit, because a review video already has the verdict, the complaints, and the favorite feature in it, but a how-to or a talking-head video works the same way. The test is whether the transcript alone holds a post.
It’s great for people in the Amazon Influencer Program who want a blog to help them do more to earn with offsite affiliate links.
Skip it if any of these is you:
- Your videos don’t have much talking. Music and b-roll give the writer nothing, and nothing is exactly what it will make up from.
- You want it to publish on its own. It lands a draft on purpose. I read every one, and the reason is below.
- You want the post to say more than the video did. It can’t, and the day it starts to is the day it’s writing fiction with your name on it.
- You want it to sound like a different writer. It writes in my voice because my voice rules are in the prompt. It won’t turn a rambling video into a tight essay.

What do you need to turn a YouTube video into a blog post?
- n8n. Where it runs. Mine is self-hosted on a Hostinger VPS, and the cloud version works the same way.
- A transcript source. I use Supadata, which is a paid API with a free tier of 100 requests a month, no card required, at one request per second. I’m still on the free plan. The cheapest paid plan is $60 a year, billed annually, and I haven’t needed it yet. The video’s own captions work too, for free, with a download step and mangled product names.
- An AI model with an API key. Mine is Claude Sonnet 4.6, called twice per run, once for the brief and once for the post. Both calls together come to about four cents a post by my math.
- A table with one row per video. Mine is Airtable, because the row already holds the product, the link, and the brand contact, so the workflow reads instead of asks. A sheet works.
- WordPress with the REST API on. Every WordPress site has it. The workflow creates the draft and sets the excerpt through it.
- Asana or email. Optional. Something has to tell you the draft exists, or it sits there.
The part that took the longest wasn’t any of those. It was writing the layout down precisely enough that a model could fill it.
How does the YouTube to blog post workflow keep my layout?
By making the writer fill in fields instead of writing a page. The first version of this asked Claude to write the post, and it came back as a wall of paragraphs that I then had to break into my theme’s blocks by hand, which was more annoying than the pasting it replaced. So now the writer never sees a block. It returns JSON with one field per section, and a Code node I wrote once turns each field into the markup my theme expects.
| Section of a Jen Tried It review | What the writer returns | What the Code node builds |
|---|---|---|
| Disclosure | nothing, it’s fixed | the reusable disclosure block |
| Opening | two short paragraphs | paragraph blocks |
| Quick verdict | get it if, skip it if, favorite thing | a two-column row with a check icon |
| Product box | name, one line, the link | a row with the image slot and a button marked sponsored and nofollow |
| Specs | a list of plain facts | a list block |
| Who it’s for | two lists | heading plus lists |
| FAQ | four to six question and answer pairs | the FAQ block that emits the schema |
The prompt that produces the JSON is the whole Jen Tried It voice skill pasted in as the system prompt, plus a contract that says: return only this JSON, nothing before it, nothing after. One “Here’s your post” in front of the JSON breaks the parser, and it took a few runs to make the model stop being helpful that way.
The research call runs first and has web search turned on, so the specs come from the product page instead of from the model’s memory. The writing call gets the brief and the transcript and nothing else. Opinions from the transcript, facts from the listing, and the writer is told which is which.
Get the generator
The generator writes the part you’d otherwise learn by shipping a few drafts you regret, which is the rules. You tell it what your videos are, where the transcript comes from, what every post needs, and what must never be invented, and it writes three things: the n8n build sheet, node by node, with the JSON contract filled in for your layout, plus a skill for Claude Code or a paste-in prompt for a browser chat that does the writing the same way.
The never-invent list is the part to take seriously. Everything you check off becomes a check the writer runs on its own draft and a list it hands you before the post. My own workflow doesn’t hand me that list yet. I read the whole draft instead, and the list is the next thing I’m adding.
What it doesn’t do
It doesn’t stop inventing. It’s better than it was, and it still slips things in. A dog on a porch that wasn’t in the video. “Already ordered more” when I said no such thing. A fact about the product that turned out to be wrong. That’s why I still check everything. I do have a backlog of drafts because of that, and I’d rather have the backlog than a published post claiming something I never said.
It writes every video as me. When my sister is the one on camera, the draft still says “I,” and I fix it by hand before it goes anywhere. The generator above has a box for that, because I learned it the slow way.
It doesn’t add images. The image slots come through empty and I fill them from the video afterward.
It only runs on my own videos. When the spark comes from somebody else’s, a share from TikTok files it as an idea instead of a draft.
And it needs a transcript to exist. A video with none used to get a draft anyway, written from the title and the description, which is exactly the kind of draft you’d expect. Now the run stops, marks the row, and emails me, and that fallback is the most recent thing I added.

Frequently asked questions
Can you turn a YouTube video into a blog post automatically?
Yes, up to the draft. n8n can fetch the transcript, have a model write the post in a fixed layout, and save it to WordPress without you touching it. The step that stays manual is reading the draft, because the model will fill gaps with things you didn’t say.
Is a blog post written from my video transcript still my writing?
It is if the transcript is the only source. Mine is told that every opinion has to trace to a sentence I said on camera and every fact to the product page. The words are mine, the typing isn’t. I wrote about where I stand on AI doing the typing if that question nags at you.
What does it cost to turn a video into a post this way?
About four cents a post for the two model calls, by my math, plus a transcript API that has a free tier of 100 requests a month. n8n is free if you self-host it. The expensive part is the ten minutes I spend reading each draft, and I’m not automating that.
Do I need to know how to code to build this in n8n?
You need to be able to paste. Most of the nodes are configured by clicking, and the two Code nodes, one that cleans the transcript and one that turns JSON into blocks, are the kind of thing you can have Claude write from a description. I did.
What happens if the video has no transcript?
The run stops and tells me. That fallback exists because a writer with no transcript invents the whole post from the title, and a confident draft about a video nobody transcribed is worse than no draft.
Try it yourself
Open a transcript of one of your own videos and read it as if it were a blog post. If it holds a verdict, a complaint, and a favorite thing, you have enough to build from. If it doesn’t, the workflow won’t find them either.
Then run the generator above, build node six first, the one that holds your layout and your never-invent list, and send one real video through. Read the claims list before the draft. If it’s empty and true, you’ve got a system. If it’s empty and wrong, you’ve got a writer to tighten, and you know which node to open.
A tool I built
Porch Pile
Track your whole Amazon Influencer operation, every product, video, and brand deal, so one glance tells you what to film next.
Start your pile →I run an affiliate program on the tools I build. Approved affiliates earn 20% on what their referrals pay, for up to a year. US only for now. See the program →
Related reading
- Self-Host n8n on Hostinger: I Used the One-Click Template
- How I Turn a YouTube Video Into Shorts Without Editing Anything
- Turn Blog Posts Into Social Media Posts Automatically With n8n
Subscribe if you haven’t already. The shorts post and this one are the same videos going two directions, and there’s more of what I’ve built coming. Go forth and automate the boring stuff.
