Instagram Account 360 Intelligence — Posts, Reels & Carousels avatar

Instagram Account 360 Intelligence — Posts, Reels & Carousels

Pricing

from $0.18 / account audit

Go to Apify Store
Instagram Account 360 Intelligence — Posts, Reels & Carousels

Instagram Account 360 Intelligence — Posts, Reels & Carousels

Read any public Instagram account over 7 to 90 days or its entire history. Returns every post, reel and carousel with full metadata, AI reel transcripts, on-image text from every carousel slide, top-level comments with reply counts, engagement analytics, and agent-ready soul.md and design.md briefs.

Pricing

from $0.18 / account audit

Rating

0.0

(0)

Developer

SIÁN OÜ

SIÁN OÜ

Maintained by Community

Actor stats

2

Bookmarked

10

Total users

6

Monthly active users

0.031 hours

Issues response

8 days ago

Last modified

Share

Instagram Scraper — Posts, Reels, Comments & AI Transcripts 🚀

Store Store Store Store

🎉 Reads the text burned into every image — the hook Instagram publishes nowhere as text

Built for marketers, agencies and content strategists who need a whole account, not one post


🔎 What is the Instagram Account Scraper — and when should you use it?

The Instagram Account Scraper turns a public Instagram handle into clean, structured rows you can filter, export and feed straight into a spreadsheet, database or AI agent. Point it at an account, pick a window from 7 days to the entire account, and every reel, feed post and carousel published in that span comes back in one dataset. No login, no browser automation to maintain.

Use it when you need: every post in a date range with captions, likes, comments, plays, hashtags, mentions, music, location and carousel slide counts. You also get reel transcripts, the verbatim on-image text, and a one-line visual description of every image — carousel slides, single-image posts and reel covers alike. Engagement rates are benchmarked per format. Best posting days and hours and a written strategy rundown come in the same run.

Use something else when: you already have the specific post URLs you care about and only want them transcribed. Use Instagram AI Transcript Extractor for that — it takes URLs, this takes an account.


🤖 Use with AI agents

Already connected to the Apify MCP server? Just ask for this Actor by name: sian.agency/instagram-account-360-intelligence

Otherwise copy this prompt into Claude, ChatGPT, Cursor or any MCP-enabled assistant:

I want a full content audit of an Instagram account using the Apify Actor `sian.agency/instagram-account-360-intelligence`.
Use it when I need: every reel, feed post and carousel an account published in a chosen window (7, 14, 30, 60, 90 days, or the entire account), with engagement metrics, reel transcripts, the on-image text and a visual description of every image (carousel slides, single-image posts and reel covers), and a strategy read of the whole account.
Don't use it when: I already have specific post URLs and just want them transcribed — use `sian.agency/instagram-ai-transcript-extractor` instead.
How to call it: give it `username` (a profile URL, a handle, or @handle — all accepted) and `windowDays` (7, 14, 30, 60, 90, or `all` for the entire account). Set `timeZone` to my audience's timezone so the best-day and best-hour analysis is meaningful. Toggle `includeImageText`, `includeTranscripts` and `includeRundown` to control depth.
Start with this input:
{
"username": "nasa",
"windowDays": "30",
"timeZone": "America/New_York",
"includeImageText": true,
"includeTranscripts": true,
"includeRundown": true
}
Ask me which account and which window, then run the Actor and summarise the results as a table sorted by engagement rate.

Things you can ask your agent for:

  • "Audit my top three competitors over the last 90 days and tell me which formats and hooks are working for each."
  • "Pull every carousel this account posted in 60 days, read all the slides, and show me how they structure a hook."
  • "Find this account's best posting day and hour in my timezone, and list the five posts that beat their format's median by the widest margin."

Machine-readable API, MCP config and OpenAPI definition for this Actor are published at apify.com/sian.agency/instagram-account-360-intelligence.md.


📋 Overview

You give it a handle. It gives you the account. Every post in your window, what each one said on screen and out loud, and a read of what is working.

What you get:

  • Every format in one run: reels, single images and carousels come back together, from one input
  • 👁️ On-image text from every slide: the hook, the payoff and the CTA of a carousel, extracted in slide order
  • 🎙️ Reel transcripts included: spoken audio with timestamped segments plus ready-to-use SRT and WebVTT
  • 🎯 Engagement judged fairly: each post is scored against the median of its own format, so a strong image is not buried by a viral reel
  • 💰 One input, whole account: a handle and a window, instead of a list of post URLs you had to collect first
  • 💎 A written rundown: content pillars, working hooks, posting patterns and recommendations, with the evidence cited

✨ Features

  • 📅 7 / 14 / 30 / 60 / 90-day windows, or the whole account: pick the span, get everything published inside it
  • 🧲 All three formats: reels, feed images and carousels in a single dataset
  • 👁️ Carousel OCR: every slide read in order, each paired with its own image URL
  • 🎙️ AI reel transcripts: text, timestamped segments, word-level timings, SRT and WebVTT
  • 📈 Per-format benchmarking: engagement rate, ratio against the format median, and percentile rank
  • Timezone-aware timing: best days and hours calculated in the timezone you name
  • #️⃣ Hashtag performance: which tags you actually repeat, and how they perform
  • 🪝 Format + hook frameworks: every post tagged with the short-form format it uses and the hook its opening line runs
  • 📌 Pinned-post detection: see what the account chooses to show first
  • 🔗 Similar accounts: Instagram's own suggested-similar chain — the closest thing to a competitor list the platform publishes
  • 👥 Following list: the peer set an account curates, capped so it stays a read rather than an export
  • 🧰 clone-kit.md: one file you paste into an LLM to get a full build plan in YOUR brand
  • 🧬 soul.md: the whole account reverse-engineered into a brief another agent can rebuild from
  • 🎨 design.md: a ready-to-run prompt that recreates the account's look, plus the tokens behind it
  • 💬 Comments: top-level comments with author, likes and reply counts
  • 🌍 Whole-account mode: ignore dates and page back to the first post
  • 📄 HTML report: a shareable summary written even when a run fails — two charts of how the account developed over time, plus one-click copy for each brief
  • 🧾 50 fields per post: captions, music, location, dimensions, owner and audio IDs and more

🎬 Quick Start

Give it a handle and a window. It resolves the account, pages the feed until it crosses your cutoff, reads the media, and writes a dataset plus a report.

curl -X POST https://api.apify.com/v2/acts/sian.agency~instagram-account-360-intelligence/runs?token=YOUR_TOKEN \
-d '{"username": "nasa", "windowDays": "30"}'

🚀 Getting Started (3 Simple Steps)

Step 1: Enter the account

Paste the profile URL straight from your browser, or type the handle. https://www.instagram.com/nasa/, nasa and @nasa all work.

Step 2: Pick your window

7, 14, 30, 60 or 90 days — or the entire account. Set your audience's timezone so posting-time advice means something.

Step 3: Run it

Open the dataset for the rows, or the HTML report for the read.

That's it! In a few minutes, you'll have:

  • Every post the account published in your window
  • What each one said, on screen and out loud
  • Which formats, hooks, days and hashtags are actually working

📥 Input Configuration

FieldTypeRequiredDescription
usernamestringYesPublic Instagram account — profile URL, handle, or @handle
windowDaysstringNo7, 14, 30, 60, 90, or all for the entire account. Defaults to 30
timeZonestringNoIANA timezone for posting-time analysis. Defaults to UTC
includeImageTextbooleanNoRead on-image text from every slide. Defaults to true
includeTranscriptsbooleanNoTranscribe reel audio (PAID only). Defaults to true
includeRundownbooleanNoWrite the strategy rundown. Defaults to true
includeSoulbooleanNoBuild soul.md, the account rebuild brief. Defaults to false
includeDesignSystembooleanNoBuild design.md, the visual system. Defaults to false
includeCommentsbooleanNoCollect top-level comments. Defaults to false
maxImagesAnalyzedintegerNoImages the on-image text pass reads. Empty (default) = all of them
maxReelsTranscribedintegerNoReels transcribed. Empty (default) = all of them
maxCommentsPerPostintegerNoComments per post. Empty (default) = every comment; free runs: 5
includeOlderPinsbooleanNoAlso return pinned posts published before the window (PAID). Defaults to false
includeCloneKitbooleanNoBuild clone-kit.md, one file for your LLM. Defaults to false
brandName / brandVoice / designPrinciples / subjectMatter / brandColorsstringNoYour brand, written into clone-kit.md so the plan comes back in your voice
includeFrameworksbooleanNoTag each post's video format and hook type. Defaults to true
includeSimilarAccountsbooleanNoAccounts Instagram lists as similar to this one. Defaults to true (PAID)
includeFollowingbooleanNoThe accounts this profile follows (PAID). Defaults to false
maxFollowingintegerNoFollowed accounts collected. Empty (default) = the whole list
maxPostsintegerNoThe only run limit. 0 (default) means every post in the window. Free runs: 3 newest

The five bold options each carry their own charge, so they are off by default — you opt into a cost, you never discover it afterwards.

Example:

{
"username": "nasa",
"windowDays": "90",
"timeZone": "Europe/Berlin"
}

Metadata-only (fastest, cheapest):

{
"username": "nasa",
"windowDays": "30",
"includeImageText": false,
"includeTranscripts": false,
"includeRundown": false
}

Clone-the-account kit (both briefs + comments):

{
"username": "nasa",
"windowDays": "90",
"includeSoul": true,
"includeDesignSystem": true,
"includeComments": true,
"maxCommentsPerPost": 30
}

Whole account, ever:

{
"username": "nasa",
"windowDays": "all"
}

Nothing caps this. Every post on the account is collected, and every pass you left on runs over all of them. Set maxPosts if you want a ceiling.


🧬 soul.md — hand your account to an agent

Turn includeSoul on and the run writes soul.md: the account reverse-engineered into a brief another AI agent can build from. Paste it whole into Claude, ChatGPT or your own agent and it has everything it needs to run a comparable account.

What's in it. Positioning and audience first, then the exact posting cadence and the gaps to hold, then the format mix — including where what the account posts parts company with what actually performs.

After that come the measurements: reel length in seconds with the winners kept separate from the median, carousel slide counts, caption length and formula.

The judgement calls sit at the end. Content pillars are read off the outlier posts rather than the average one. Hook patterns arrive with real examples of the lines that earned the stop, voice as do and don't lists. The file finishes on a seeded first-30-days calendar, anti-patterns and what to measure.

Every number in it is measured, not written by a model. The model is asked only for judgement and is instructed never to write a figure; the cadence, lengths and percentages are computed from your posts and injected by the actor. If the run collected only part of the window, the file says so at the top rather than letting you trust a cadence figure built on a partial sample.

📌 Pinned posts

Instagram lets an account pin up to three posts to the top of its grid. That is the account telling you which of its own work it rates — usually its best converting post, and usually not a recent one.

Every post carries isPinned, and a pin published inside your window is always returned. Pins published before the window are hidden by the date filter, so turn on includeOlderPins to get them too. They come back as ordinary rows with isPinned: true, and:

  • they do not count against maxPosts — a 10-post run still returns 10 posts from your window, plus the pins;
  • they are left out of the window statistics on purpose. A pin from 2022 inside a 30-day window would report a multi-year posting gap and, carrying years of accumulated likes, redefine the format median every real post is scored against. Their performanceRatio and percentileInFormat are null rather than a number that means nothing.

🪝 Frameworks — which format, which hook

Engagement tells you a reel beat its format median. It does not tell you the reel was a mistake video opened on a reverse-psychology hook, and that is the part you can reproduce.

Every post is tagged against two closed vocabularies, so the answers are countable rather than twenty phrasings of the same idea:

  • 🎬 23 video formats: breakdown · case-study · problem-solution · mistake · tutorial · listicle · scenario · comparison · qa · tier-list · levels · reaction · skit · heros-journey · personal-learnings · day-in-the-life · personal-update · about-me · social-show · challenge · commentary · myth-busting (+ other)
  • 🪝 19 hook types: vulnerability · probing · reverse-psychology · bold-claim · mid-sentence · listicle-promise · question · curiosity-gap · negative-warning · relatable-peer · typography-headline · investigator · proof-drop · experimenter · fortune-teller · magician · pattern-interrupt · story (+ none)

Three more axes move performance on their own, per the 2026 research. deliveryStyle covers greenscreen, talking-head, voiceover-broll, montage and 6 more. emotion spans fear, outrage, empathy, curiosity, humor, trust, aspiration and hope. ctaStyle is implied, direct or none.

Each row also carries hookLine: the opening line a viewer actually meets, verbatim. For a reel that is the first spoken sentence, for a carousel the first slide's text, and only then the caption — captions are written afterwards and usually open with a summary nobody hears.

Share and performance are reported side by side, because they disagree more often than not. A real run:

HookShareMedian vs format
bold-claim30%0.63×
relatable-peer20%1.25×
probing10%1.28×

The account's most-used hook is its weakest. That is the finding, and a single ranking would have hidden it.

Tags below 0.5 confidence are left out of the distributions rather than counted — a guess presented as evidence is how a brief ends up recommending a format nobody verified. Costs nothing extra: one model call covers the whole window.

📐 Read against the 2026 field

Every other number in a run is measured from the account itself. These are the exception, so each one ships with the study and sample size behind it — a benchmark you cannot check is an opinion in a table.

FindingNumberSource
Emotional register moved views49× (fear 264K vs hope 5.4K)The Content Labs, 3,997 videos
Greenscreen vs plain talking-head2.6× (150K vs 56K)The Content Labs
Implied vs direct CTA~2× (139K vs 72K)The Content Labs
Hot-take / investigator hooks vs story~20×The Content Labs
Proof-drop hooks win saves1,761 avg, highest measuredThe Content Labs
Question hookslowest median of eight archetypesPreAlgo
Reels skipped in first 3s60-65%Socialinsider, 140K Reels
Carousels vs single-image savesMetricool, 24.3M posts
Views landing in first 72h70%Metricool

Where studies disagree, both are carried. The duration evidence genuinely conflicts: measured on raw views across TikTok and Instagram, 90s+ beat 0-15s by 31×; measured on Instagram reach rate, 30-60s led and everything past two minutes fell by a third. Both are real, they measure different things, and averaging them would invent a consensus that does not exist.

The report reads your account against these and says where it sits — median reel length, carousel slide count, posting cadence, format mix.

🧰 clone-kit.md — one file, one paste, a whole build plan

A run produces a lot: a dataset, a strategy brief, a visual spec, analytics. Handing all of it to an LLM is the wrong move — most of it is machine plumbing. Measured on a real 29-post run, the full output is roughly 80,000 tokens, of which about 15% is signal: 31% of the dataset is subtitle formats and word timings, 27% is expiring image URLs. A model asked to plan content while reading WebVTT cue timings plans worse content.

clone-kit.md is the curated version — around 15,000 tokens, assembled from what the run already produced:

SectionWhat it carries
1Your brand — from the brandName / brandVoice / designPrinciples / subjectMatter / brandColors inputs
2The shape to match: cadence, format mix, best days and hours, reel length, carousel length
3The strategy brief (soul.md), when that is on
4The visual style and its runnable prompts (design.md), when that is on
5The posts that beat their own format median, with caption, on-image text and transcript
6Adjacent accounts worth reading next
7The output contract: exactly what to hand back

It costs nothing extra. No model call is made to build it — it only moves text the run already measured or already wrote, which also means it cannot invent anything.

Fill in the brand fields. They are written into section 1, so what comes back is in your voice rather than the source account's. Anything you leave blank becomes a question the model is told to ask you, never a guess it makes quietly.

Two account-level lookups that answer "who else is in this orbit?".

Similar accounts is Instagram's own suggested-similar chain — the nearest thing to a competitor list the platform will tell you. It is on by default and carries no extra charge. Usually 30-80 accounts with username, name and verified status, though the exact set shifts between reads, and Instagram sometimes lists none at all. When that happens the run says so plainly instead of presenting an empty list as a finding. It works on niche accounts, not only famous ones: a ~5k-follower bilingual-parenting account returned 36 genuine peers. Feed any of them back into this Actor to compare.

Following is who the account chooses to follow — its peer set, partners and the people it learns from. Off by default, read 50 per call and capped by maxFollowing (200 by default, 1000 maximum) so a heavy-following profile cannot run away with your time.

Both are account-level facts, not posts, so they land in the account-summary record and the HTML report rather than the dataset — the dataset stays exactly one row per post.

What you will not get here: follower counts or bios for these accounts. Instagram does not publish them on either list, so there is nothing to segment by audience size without looking each account up individually. Usernames, names and verified status are what exists, and that is what is returned.

Follower lists are deliberately not supported. They are unbounded — a large account is millions of rows at 50 per call — and the rows carry the same thin fields, which makes them expensive to fetch and weak to analyse. That is a different product, not a toggle on this one.

🎨 design.md — the style, without the branding

Turn includeDesignSystem on and the run analyses the best-performing frames and writes design.md: a portable style specification as structured JSON tokens.

Section 1 of the file is runnable. It is an image prompt built from the tokens the run just derived — swap two placeholders and paste it into any image model:

Square 1:1 photograph of {SUBJECT}, bright even natural daylight, warm and
unhurried in feel, warm neutral ground around #EAE7E0. Compose asymmetrically,
lower third left clear. Overlay {HEADLINE} in regular-weight sans-serif,
sentence case, #FFFFFF, centred and stacked, inside a solid black box...

A second prompt covers a full carousel, slide by slide, built from the arc read off real sequences — and it is omitted rather than guessed when the window held no carousel to read. Everything below is the evidence those prompts came from: palette, typography, layout, mood, graphic devices, the arc, and do/don't rules, as JSON tokens you can edit and regenerate from.

It is a style spec, not a brand guide. The account's business name, bio and positioning are deliberately absent — they carry no design information and are not yours to reuse. Anything that could only belong to the source account is quarantined under sourceIdentity.markers, so a model reading the file substitutes your subject matter instead of reproducing someone else's.

§2 bends the system onto your brand — a fill-in-the-blanks prompt, three lines for your brand, colours and subjects, that rewrites §1 in your voice without losing the structure that makes it work.

What it looks at, and what it doesn't. Two passes. One cover frame from each of your top posts gives the palette, type and layout. The full slide run of your two strongest carousels, read in order, is where the carousel arc comes from.

An arc is a property of a sequence, so it is reported only when a complete sequence was actually read. If the window holds no multi-slide carousel, the file says no arc is claimed rather than inventing a generic one. Reels contribute their cover frame only: Instagram's data service exposes no video frames, so nothing in the file describes a reel's motion, pacing or in-video text, and the file says so. The report lists exactly how much of each post was read.

Both files appear in the HTML report inside a code panel with a one-click "Copy all" button, and are saved to the key-value store as soul.md and design.md.


📤 Output

One row per post, 50 fields each, plus an HTML report and a JSON summary.

The Output tab shows the dataset, the report and the account summary. The generated briefs — soul.md, design.md, clone-kit.md — are written to the run's key-value store (Storage → Key-value store), and are also carried in full inside the report, each with its own copy button.

How the account developed — the report opens its analysis with two charts drawn from the posts in your run: volume per period against the median engagement rate of what was published, and the format mix over the same periods. The period follows the window — weeks up to four months, months up to six years, quarters beyond that.

FieldTypeDescription
urlstringPost permalink
postFormatstringreel, carousel or image
timestampstringISO 8601 publish time
captionstringFull caption text
displayUrlstringThe post's cover image — shown as a thumbnail in the dataset view
imagesarrayOne entry per image: index, imageUrl, onImageText, visual. A carousel gives one per slide, in order
onImageTextstringEvery image's text joined in order — the searchable roll-up of images[]
transcriptstringReel speech, with segments, words, srtSubtitles, vttSubtitles
engagementRatenumber(likes + comments) ÷ followers × 100
performanceRationumberThis post ÷ the median for its own format. null for a pin from outside the window
percentileInFormatintegerRank against same-format posts, 0-100. null for a pin from outside the window
likesCountintegerLikes
commentsCountintegerComments
videoPlayCountintegerReel plays
hashtagsstringHashtags found in the caption
isPinnedbooleanWhether the account pins this post to the top of its grid
musicSongstringTrack title where present
commentsarrayTop-level comments: text, username, likeCount, replyCount, createdAt, isPinned
commentsCollectedintegerHow many comments this run collected for the post
repliesReportedintegerTotal replies those comments drew (counts only — see below)

Example:

{
"url": "https://www.instagram.com/p/DbrRMHCDs4H",
"postFormat": "carousel",
"timestamp": "2026-08-05T14:02:11.000Z",
"caption": "So much confusion this summer ☀️",
"slideCount": 4,
"displayUrl": "https://scontent.cdninstagram.com/v/t51.../cover.jpg",
"onImageText": "SH*T THAT DOESN'T MATTER\nother people's opinions\nComparing yourself to other people",
"images": [
{
"index": 0,
"imageUrl": "https://scontent.cdninstagram.com/v/t51.../slide1.jpg",
"onImageText": "SH*T THAT DOESN'T MATTER",
"visual": "White background, two columns of black handwritten text"
}
],
"engagementRate": 0.126,
"performanceRatio": 1.22,
"percentileInFormat": 75,
"likesCount": 14727,
"commentsCount": 156,
"isPinned": false
}

💼 Use Cases & Examples

1. Competitor teardown

An agency strategist needs to know why a rival's account is outgrowing theirs.

Input: the rival's handle, 90 days Output: every post, scored within its format, plus the written rundown Use: a client-ready audit from a single run

A content creator wants to copy the structure, not the content, of carousels that work.

Input: a handle known for carousels, includeImageText on Output: slide-by-slide text in order across every carousel Use: see how the best accounts open, build and close a swipe

3. Posting-schedule decisions

A social media manager is guessing at posting times.

Input: their own handle, 90 days, their audience's timezone Output: engagement by day and by hour, plus cadence and gap analysis Use: move the calendar to the slots that actually earn engagement

4. Content pillar audit

A brand marketer suspects half their output is wasted effort.

Input: the brand handle, 60 days Output: pillars named and scored, with the weakest posts listed Use: cut the themes that never land, double down on the ones that do

5. Influencer vetting

A partnerships lead is comparing three creators before signing one.

Input: each handle, 30 days Output: engagement rate normalised by follower count, consistency, and per-format breakdown Use: compare creators of different sizes on the same footing

6. Script and caption mining

A copywriter needs a corpus of what actually gets said.

Input: any handle, transcripts on Output: reel transcripts plus captions plus on-image text Use: feed a language model the account's real voice, not a paraphrase

7. Launch a new account modelled on a proven one

A founder is starting from zero and wants a system, not a guess.

Input: a strong account in the niche, 90 days, includeSoul and includeDesignSystem on Output: soul.md and design.md Use: hand both to a content agent. One supplies the cadence, pillars and hooks, the other the look — then swap in your own brand

8. Audience research from the replies

A product marketer wants the questions buyers actually ask.

Input: the brand handle, includeComments on Output: top-level comments per post, plus how many replies each one drew Use: mine objections and requests in the audience's own words, and see which posts started a real conversation


🔗 Integration Examples

JavaScript/Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_TOKEN' });
const run = await client.actor('sian.agency/instagram-account-360-intelligence').call({
username: 'nasa',
windowDays: '30'
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items[0]);

Python

from apify_client import ApifyClient
client = ApifyClient('YOUR_TOKEN')
run = client.actor('sian.agency/instagram-account-360-intelligence').call(
run_input={'username': 'nasa', 'windowDays': '30'}
)
for item in client.dataset(run['defaultDatasetId']).iterate_items():
print(item['url'], item['engagementRate'])

cURL

curl -X POST 'https://api.apify.com/v2/acts/sian.agency~instagram-account-360-intelligence/runs?token=YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"username": "nasa", "windowDays": "30"}'

Automation Workflows (N8N / Zapier / Make)

  1. Trigger: weekly schedule
  2. HTTP Request: run the Actor for each competitor handle
  3. Process: filter rows where performanceRatio is above 1.5
  4. Action: post the winners to Slack, or append to a content-ideas sheet

📊 Performance & Pricing

FREE Tier (Try It Now)

  • 3 posts per run — the newest posts of your window, full metadata and on-image text
  • Comments capped at 5 per post; reel transcription is a paid feature
  • No credit card required — enough to see the exact output shape before a full audit
  • Unlimited posts per run across the full 90-day window
  • Every reel transcribed; every image read for its on-image text and a visual description
  • Charged per successful result, never for errors — unreadable images cost nothing
  • A transcribed reel's cover image is read free of charge, never billed twice

💰 You control the depth. Turn transcripts and image reading off for a fast metadata sweep, or leave everything on for the full audit.

🔗 View current pricing


❓ Frequently Asked Questions

Q: How many posts can I process? A: FREE tier: the 3 newest posts of your window. PAID tier: every post in the window, up to 1000 in whole-account mode.

Q: Does it work with private accounts? A: No. Only public accounts can be read, and the run tells you plainly if a handle is private.

Q: Can I get reach, impressions or saves? A: No, and no tool can for an account you do not own. Instagram publishes those only to the account holder. You get likes, comments, plays and everything else that is public.

Q: Do I get comment replies? A: You get every top-level comment with its full text, and for each one the number of replies it drew. You do not get the reply text — Instagram's data service does not expose it, so rather than quietly returning empty threads the actor reports the counts and says so. repliesReported is still a good signal for which posts started an actual conversation.

Q: How many comments can I get per post? A: Up to 200, default 30. Popular posts carry tens of thousands — one account we tested had a post with over 11,000 — so the cap keeps runs fast and bills predictable.

Q: What is soul.md and what do I do with it? A: It is your account reverse-engineered into a brief another AI agent can build from — cadence, formats, reel lengths, pillars, hooks and voice, with a seeded 30-day calendar. Copy it out of the report with one click and paste it into any agent. Every number in it is measured from your posts, not written by a model.

Q: Will design.md just clone someone else's brand? A: No — it is built so it cannot. The account's name, bio and positioning never enter the file, and anything that could only belong to that account (the faces, the products, the literal copy) is quarantined under sourceIdentity.markers for you to replace. What you keep is the transferable part: hierarchy, contrast, layout, type treatment, slide arc. You inherit the system that works, not the content that belongs to someone else.

Q: How do I actually use design.md? A: Section 1 is an image prompt you can run as-is — replace {SUBJECT} and {HEADLINE} and paste it into any image model. A second prompt does a full carousel slide by slide. To adapt the style to your own brand instead of reproducing it, section 2 is a fill-in prompt (three lines: your brand, colours, subjects) that rewrites section 1 in your voice and tells you if your brand guidance breaks a rule that mattered.

Q: What happens if I scrape a whole account with thousands of posts? A: You get all of them. Nothing is capped or switched off behind your back — if you asked for the on-image text and transcript passes, they run over every post collected, which on a large account is a large bill.

Every limit is yours to set, and every one is empty until you set it:

Set thisTo bound
maxPoststhe whole run
maxImagesAnalyzedon-image text reading (the biggest line on a carousel-heavy account)
maxReelsTranscribedtranscription
maxCommentsPerPostcomment collection

The run options also carry a "Max total charge" ceiling if you would rather bound the spend than the output.

Q: What output formats are available? A: JSON, CSV and Excel from the dataset, plus an HTML report and a JSON summary in the key-value store.

Q: Does it read every slide of a carousel? A: Yes, in order. If an image budget is reached, whole posts are skipped rather than half-read, and the report says what was left out.

Q: What if the account posted nothing in my window? A: The run succeeds and says so. It does not invent a result.

Q: How long does it take? A: A 30-day window on a busy account is typically a few minutes. Transcripts and image reading are the slow parts — turn them off for a fast sweep.


🐛 Troubleshooting

"Account was not found"

  • Check the spelling. A profile URL, nasa and @nasa are all accepted; a post or reel link is not, because this Actor reads a whole account rather than one post.

"This is a private account"

  • Private accounts are not readable. There is no setting that changes this.

Fewer posts than expected

  • On the FREE tier runs return the 3 newest posts, and reel transcription is paid-only. Check maxPosts too — 0 means the whole window.

Some images have no text

  • Plenty of posts genuinely carry no on-image copy. Photos without overlaid text return an empty string and a visual description.

Posting-time advice looks wrong

  • Set timeZone to your audience's zone. It defaults to UTC, which is rarely what you want.

Our actors are ethical and do not extract any private user data, such as email addresses, gender, or location. They only extract what the user has chosen to share publicly. We therefore believe that our actors, when used for ethical purposes by Apify users, are safe.

However, you should be aware that your results could contain personal data. Personal data is protected by the GDPR in the European Union and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers.

You can also read Apify's blog post on the legality of web scraping.


🤝 Support

Telegram Support

Join our active support community


Built by SIÁN Agency | More Tools