Instagram Post to Article avatar

Instagram Post to Article

Under maintenance

Pricing

from $100.00 / 1,000 articles

Go to Apify Store
Instagram Post to Article

Instagram Post to Article

Under maintenance

Transforms Instagram carousel posts into longform blog articles using multimodal LLMs. Extracts slide images, interprets visual and textual content, and synthesizes a coherent longform article.

Pricing

from $100.00 / 1,000 articles

Rating

0.0

(0)

Developer

Hikayat Labs

Hikayat Labs

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

a day ago

Last modified

Share

⚠️ ALPHA SOFTWARE — Expect breaking changes, bugs, and evolving features. Report issues →

Instagram Post to Article transforms Instagram carousel posts into longform articles using multimodal AI. It extracts carousel content, processes images with OCR, interprets visual and textual elements, and synthesizes a coherent article.

Works best with educational carousels, data-driven posts, how-to guides, and infographic-style content.

How it works

Three-stage pipeline:

  1. Extract — Invoke Instagram Scraper to fetch the post and download carousel images
  2. Interpret — OCR on text overlays + multimodal analysis of visual content (charts, infographics, data)
  3. Synthesize — Generate a structured article grounded in the source material

Processing takes ~30–60 seconds per post, depending on carousel length and image complexity.

Cost

Pay-per-event pricing:

EventCost
Instagram extraction (via Instagram Scraper)Billed by that actor — see its pricing
Slide processing~$0.01 per image
Article synthesis~$0.1 per article

Typical 5-slide carousel: ~$0.2 total (depending on Instagram Scraper costs + slide processing). Pricing may change during alpha.

Input

{
"postUrls": [
{
"url": "https://www.instagram.com/p/ABC123/"
},
{
"url": "https://www.instagram.com/p/DEF456/",
"synthesisTemplate": "newsletter",
"synthesisGuide": "Include a subscriber call-to-action"
}
],
"synthesisTemplate": "article",
"synthesisGuide": "Write in a neutral journalistic tone",
"includeExtracted": false,
"includeInterpretation": false
}

Parameters

ParameterTypeRequiredDefaultDescription
postUrlsarrayInstagram post URLs to process. Each item is an object with url (required) and optional overrides (see below).
synthesisTemplatestringNo"article"Preset output style. Options: article, newsletter, social_thread, none.
synthesisGuidestringNoCustom instructions for tone, focus, style. Appended to template instructions.
includeExtractedbooleanNofalseInclude raw extraction data in output.
includeInterpretationbooleanNofalseInclude OCR results and semantic blueprint in output.

Synthesis Templates

Templates provide base instructions for the LLM. synthesisGuide extends or refines them.

TemplateOutput style
articleGeneral purpose — structured with headings, conversational voice
newsletterConcise, scannable, hook intro, call-to-action ending
social_threadPunchy, short paragraphs, engaging hooks — LinkedIn/Twitter style
noneNo template — only custom synthesisGuide (if any) is sent

Per-URL Overrides

Each item in postUrls can override the global settings:

{
"url": "https://www.instagram.com/p/ABC123/",
"synthesisTemplate": "newsletter",
"synthesisGuide": "Write for a tech-savvy audience",
"includeExtracted": true,
"includeInterpretation": false
}

Per-URL values take precedence over global defaults. Omit any field to inherit the global value.

Output

Each processed post produces one dataset item:

{
"sourceUrl": "https://www.instagram.com/p/ABC123/",
"title": "Generated Article Title",
"body": "# Markdown article content...",
"wordCount": 1234,
"sourceCount": 5,
"error": null,
"errorMessage": null
}
FieldDescription
sourceUrlOriginal Instagram post URL
titleGenerated article title (markdown)
bodyFull article body in markdown
wordCountWord count of generated article
sourceCountNumber of carousel slides used as source
errorError code if failed: SCRAPE_FAILED, IMAGE_DOWNLOAD_FAILED, OCR_FAILED, INTERPRETATION_FAILED, LLM_ERROR, TIMEOUT, CONFIG_ERROR, INTERNAL_ERROR
errorMessageDetailed error description
extracted(only if includeExtracted: true) Raw extraction data
interpretation(only if includeInterpretation: true) OCR results and semantic blueprint

Failed posts still produce a dataset item with error and errorMessage populated. The actor continues processing remaining URLs.

API Usage

from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("actor-id").call(
run_input={
"postUrls": [{"url": "https://www.instagram.com/p/EXAMPLE/"}],
"synthesisTemplate": "article"
}
)
for item in client.dataset(run["defaultDatasetId"]).list_items().items:
print(item["title"], item["wordCount"])
import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: "YOUR_API_TOKEN" });
const run = await client
.actor("actor-id")
.call({
postUrls: [{ url: "https://www.instagram.com/p/EXAMPLE/" }],
synthesisTemplate: "article",
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
for (const item of items) {
console.log(item.title, item.wordCount);
}
apify call actor-id \
'{"postUrls":[{"url":"https://www.instagram.com/p/EXAMPLE/"}],"synthesisTemplate":"article"}'

FAQ

What post types work best? Educational carousels, how-to guides, data-driven posts, and infographics with text overlays. Single images, reels, and highly visual/low-text content don't translate well.

Private accounts? No. Only public posts.

Can I customize the output? Yes — use synthesisTemplate for a preset style and synthesisGuide for custom instructions on tone, structure, and focus.

What if a post fails? The actor continues processing remaining URLs. Check error and errorMessage in the output for details.

Can I automate runs? Yes. Use Apify scheduling, webhooks, or the API. Combine with Instagram Scraper to auto-process new posts from specific accounts.

Your Feedback

This is alpha software. Bug reports and feature requests help us improve:

  • 🐛 Create an issue with the run ID, input parameters, and expected vs actual behavior

By Hikayat Labs