Back to Alchemy
Alchemy RecipeIntermediateworkflow

Convert blog posts into a complete content distribution pipeline

You spend four hours researching and writing a 2,000-word blog post. It goes live on your website. A few hundred people read it. Then what? Without a distribution strategy, that piece of content might reach 1% of your actual audience. The real problem isn't writing; it's that repurposing content manually destroys your return on investment. Converting that blog post into a LinkedIn article means rewriting it. Making a Twitter thread means condensing and reformatting. Recording a video version means scripting and filming. Creating an audio version means hiring a narrator or spending time at a mic. Most people stop after step one because the effort multiplies with each channel. What if your blog post could automatically spawn five different assets, each optimised for its own channel, without you touching them again? This workflow does exactly that. One article becomes a video, an audio file, a series of social posts, and email copy, all generated and scheduled simultaneously.

The Automated Workflow

This workflow treats your published blog post as the single source of truth. When you publish, a webhook triggers a chain of AI tools that handle the transformation work. Here's the architecture:

1. Capture the trigger.

When a new blog post publishes on your site, Zapier or Make detects it via RSS feed or a direct webhook. This is your entry point.

2. Generate social copy.

Postwise receives the blog title and excerpt, then generates Twitter threads, LinkedIn posts, and Instagram captions tailored to each platform's format and audience expectations.

3. Create video content.

Hour One takes the full blog text and produces a video with a virtual presenter. Simultaneously, Pika AI generates complementary B-roll or visual sequences.

4. Generate audio.

ElevenLabs Turbo v2.5 converts the blog text into a natural-sounding podcast episode or audio summary.

5. Prepare email.

Copy.ai rewrites the blog post as a concise email newsletter that works for both plain text and HTML subscribers.

6. Schedule distribution.

The orchestration tool queues all assets with staggered posting times to maximise reach without overwhelming your audience. The whole process completes in 20 minutes. Zero manual steps.

Setting this up with Make (formerly Integromat):

Make is the easiest platform for this workflow because it offers strong native integrations with most of these tools and handles rate limiting gracefully.

1. Create a Make scenario with this sequence: Webhook (RSS) ↓ JSON Parser (extract blog data) ↓ [Parallel: Postwise + Hour One + ElevenLabs + Copy.ai] ↓ Delay (stagger posts by 2 hours) ↓ Schedule to social platforms and email service

Step 1: Set up the webhook trigger

In Make, create a new scenario and select "Webhooks" as your trigger. Choose "Watch RSS" as the module. Connect your blog's RSS feed URL.

Feed URL: https://yourblog.com/feed/
Module: Watch RSS Feed
Check interval: 5 minutes

This checks your RSS feed every five minutes and triggers when a new post appears.

Step 2: Extract and standardise the data

Add a JSON Parser module after the webhook. This ensures the blog title, URL, featured image, and content body are cleanly separated for the next steps.

Input (from RSS):
{ "title": "How to Build an Effective Content Calendar", "content": "[Full blog text here]", "link": "https://yourblog.com/content-calendar", "image": "https://yourblog.com/images/calendar.jpg"
} Output (parsed):
{ "blogTitle": "How to Build an Effective Content Calendar", "blogContent": "[First 500 words for social/email]", "blogUrl": "https://yourblog.com/content-calendar", "featuredImage": "https://yourblog.com/images/calendar.jpg"
}

Step 3: Generate social content

Add the Postwise module. Postwise has a direct Make integration. Configure it to accept the blog title and first 500 words as input.

Postwise API Call:
- Module: Postwise > Generate Content
- Input: blogTitle, blogContent (excerpt)
- Output variables: - twitterThread (array of tweets) - linkedInPost (formatted with hashtags) - instagramCaption (with emojis)

Postwise will return fully formatted posts ready to schedule. You can customise the tone (professional, casual, technical) via the Postwise settings panel.

Step 4: Create video in parallel

Create a second parallel branch. Add the Hour One module.

Hour One API call:
- Input text: Full blog content
- Virtual presenter: Choose from library (avatar style)
- Video length: Auto (typically 3-5 minutes for 1,500-word post)
- Output: Video file URL
- Webhook callback: Return URL when complete

Hour One processes asynchronously, so use a webhook callback or polling to detect when the video is ready. Make handles this with its "Wait for webhook" module.

Step 5: Generate audio

Add an ElevenLabs module in the same parallel section.

ElevenLabs Turbo v2.5 API:
- Endpoint: https://api.elevenlabs.io/v1/text-to-speech
- Input: Full blog text
- Voice ID: Choose a professional voice (e.g. "Rachel" or "Adam")
- Model: eleven_turbo_v2_5
- Output format: mp3
- Response: Audio file URL

Store the returned audio URL in a Make variable for later scheduling.

Step 6: Generate email content

Add Copy.ai module (or call their API directly).

Copy.ai API:
- Tool: Blog Post to Email Newsletter
- Input: blogTitle, blogContent
- Tone: Professional, concise
- Length: 150-200 words
- Output: emailSubject, emailBody (HTML + plain text)

Copy.ai returns both HTML-formatted and plain-text versions, which is essential for email deliverability across different clients.

Step 7: Delay and stagger distribution

This is critical for reach. You don't want everything posting simultaneously. Add a delay module.

Delay: 2 hours (waiting period before posting to social channels)
Reason: Space out distribution to hit different time zones - Immediate: Email sent (highest priority) - +0h: Blog post published (already live) - +2h: Twitter thread posted - +4h: LinkedIn article posted - +6h: Instagram post (if applicable) - +24h: Video post shared

Step 8: Schedule to platforms

Use Make's native connectors for Twitter, LinkedIn, and email services (Mailchimp, ConvertKit, etc.).

Social scheduling:
- Twitter: Post tweets from the thread array, spaced 30 minutes apart
- LinkedIn: Post article with featured image
- Email: Send to subscriber list with scheduling to 9 AM next business day
- YouTube/Vimeo: Upload video with description and tags from blog content

Configuration example for LinkedIn:

LinkedIn API call:
- Endpoint: POST /v2/ugcPosts
- Content: linkedInPost (from Postwise)
- Image: featuredImage (from RSS)
- Visibility: PUBLIC
- Scheduling: +4 hours from trigger time

The entire scenario should look like this in Make: one trigger point that branches into four parallel processing paths, then reconverges into a staggered distribution schedule.

Testing and validation:

Before running live, test with a draft blog post. Publish it to your staging environment and verify: 1. RSS webhook detects it within 5 minutes.

  1. All four parallel branches complete without errors.

  2. Each generated asset (video, audio, social copy) is usable and on-brand.

  3. Scheduling respects rate limits for each platform. If any step fails (e.g. Hour One times out), Make will flag it and allow you to retry or manually intervene.

The Manual Alternative

If you want more control over messaging or quality assurance, keep the automation for asset generation but handle scheduling manually. This is reasonable if your brand voice requires human review. Use the workflow up to step 6, then export all generated assets to a shared folder or Airtable database. Someone on your team reviews each asset, makes adjustments, and schedules them through each platform's native interface. This removes the zero-handoff requirement but keeps the heavy lifting automated. You save 75% of the time instead of 95%.

Pro Tips

1. Handle Hour One timeouts gracefully.

Video generation sometimes takes 10 minutes instead of three. Don't wait synchronously. Instead, use Hour One's webhook callback feature to post a notification to Slack when the video is ready, then manually queue it if needed. Alternatively, set Make's timeout to 15 minutes and it will retry automatically.

2. Monitor ElevenLabs character limits.

ElevenLabs has character limits per request (typically 5,000 characters). If your blog post exceeds this, split it into chapters in Make using a text chunking module. Generate separate audio files and concatenate them before uploading to your podcast platform.

3. Test Postwise tone settings.

Postwise can generate posts in different styles. Run two versions of this workflow: one optimised for B2B (LinkedIn-focused) and one for B2C (Twitter and Instagram-focused). Use conditional logic in Make to route content to the right version based on a tag you add to your blog post.

4. Batch process weekly.

Instead of running this workflow per post, batch your blog publication day. Publish three posts on the same day and let the workflow handle all three simultaneously. This reduces Make's overhead and simplifies scheduling.

5. Watch your API costs.

ElevenLabs and Hour One charge per minute of output. A 2,000-word blog becomes roughly 8 minutes of video and 10 minutes of audio. Budget accordingly if you publish multiple posts per week.

Cost Breakdown

ToolPlan NeededMonthly CostNotes
MakePro$16Handles orchestration and API calls; 10,000 operations/month included
PostwiseStarter$49Generates social copy; up to 1,000 posts/month
Hour OneBusiness$9910 videos per month; pay-per-video if exceeded
ElevenLabs Turbo v2.5Creator$99100,000 characters/month; overages charged per character
Copy.aiTeam$49Unlimited email generation; includes all templates
Email platformPro (e.g. Mailchimp)$50+Depends on subscriber count; adjust as you scale
Total~$362Suitable for 4-8 blog posts per month