

Built an n8n workflow that runs a social account end to end: picks the topic, writes the caption, generates the image, posts to FB + IG, and remembers what it already posted.
A birthday present kicked this off. My girlfriend got me a 3D printer last year, I taught myself Fusion 360, then I taught Claude to drive Fusion 360 for me. Once an AI was doing the CAD, I wanted to see how far the loop could go, so I pointed it at the content side: could a social account run itself with nobody writing the posts?
I built it, let it go, and it worked well enough that I pulled it out into a standalone n8n workflow anyone can import.
On a schedule it wakes up, decides what today's post should be, writes the caption, writes the image prompt, generates an original image, and publishes to a Facebook Page and its linked Instagram. I do not write anything.
What makes it more than a cron job that posts random stuff:
The account is aware of two things at once.
What it is about (topic-aware).
The whole content plan lives in one Config node: the vertical, the voice, five topics with angles and hashtags, and a 12-slot posting cycle. It is plain data, not hardcoded branches, so retargeting the pipeline to a completely different brand means editing that one node and nothing else.
What it already said (post-aware).
Before it writes, it reads its own recent history out of Airtable and will not repeat a topic it just covered. It also fills the grid in order, which matters because Instagram's grid fills left to right, so grouping a topic lays down a clean row instead of a random mess.
The honest results,
because that is the useful part: I ran it for months, twice a day. Around 11 cents a post (almost all of it the image), so roughly 22 cents a day. It got basically no traction. 149 posts in, the account has 6 followers. That is not the automation failing, it is that Instagram and Facebook both push video and reels with music now, and this posts still images.
I switched it off in June to stop the spend while I move it to a new setup, and the next version will generate video instead. That is a one-node swap (point the image step at a video model), it just costs more like a dollar or two a post.
You can see what it actually made here: instagram.com/agenius3d. Every image and caption there was the workflow, not me.
Stack: n8n, an LLM for the caption and image prompt (Claude Haiku by default, swappable), KIE.ai for the image, Airtable for the memory, and a notify node (Telegram, also swappable).
It is open source (MIT), with the workflow JSON, the Airtable schema, and the docs here: https://github.com/Mfrostbutter/n8n-workflow-templates/tree/main/workflows/autonomous-social-media-pipeline
Happy to break down any piece in the comments: the dedup logic, the grid-cycle math, the image poll loop, or the Instagram two-step publish.