Instagram Reels Transcript Scraper | Audio to Text avatar

Instagram Reels Transcript Scraper | Audio to Text

Pricing

from $2.50 / 1,000 results

Go to Apify Store
Instagram Reels Transcript Scraper | Audio to Text

Instagram Reels Transcript Scraper | Audio to Text

Transcribe public Instagram Reels into clean text, timestamped segments, and WebVTT subtitles. Process Reel URLs or entire public profiles and export transcripts with creator, post, and engagement metadata.

Pricing

from $2.50 / 1,000 results

Rating

5.0

(2)

Developer

Scraping Solutions

Scraping Solutions

Maintained by Community

Actor stats

0

Bookmarked

43

Total users

36

Monthly active users

5 days ago

Last modified

Share

Instagram Reels Transcript Scraper & Profile Transcriber

Turn public Instagram Reels into clean, searchable text with timestamps. Paste individual Reel URLs or enter public Instagram profiles to discover and transcribe recent Reels automatically, without cookies or an Instagram login.

Get the complete transcript, timestamped segments, WebVTT subtitles, creator information, post caption, publication date, and engagement metrics in one structured dataset. Export to JSON, CSV, Excel, XML, RSS, or access results through the Apify API.

What can you do with this Actor?

  • Transcribe one Instagram Reel from its URL.
  • Process a batch of up to 100 Reel URLs in one run.
  • Enter public profiles and collect recent Reel transcripts automatically.
  • Filter profile Reels by a relative date such as 7 days or an exact UTC date.
  • Obtain sentence-level timestamps and WebVTT subtitles.
  • Translate spoken audio into English.
  • Combine transcripts with captions, creator data, dates, and engagement metrics.
  • Send Instagram video content to LLMs, RAG pipelines, embeddings, or semantic search.
  • Schedule profile monitoring and deliver new transcripts through webhooks or integrations.

Why this Instagram transcript scraper?

Most Instagram downloaders stop at a video file or post metadata. This Actor turns the spoken content inside Reels into structured data that can be searched, analyzed, summarized, subtitled, and automated.

CapabilityValue
Reel URL to transcriptConvert a public Reel into text without manually downloading or uploading media.
Profile to transcriptsDiscover and process recent Reels from one or more public accounts in the same run.
Cost-aware captions strategyReuse Instagram subtitles when available and invoke AI only when needed.
Timestamped segmentsConnect every sentence to its start and end time.
WebVTT outputUse ready-to-export subtitle timing in video and publishing workflows.
English translationTranscribe with Whisper Turbo first, then translate the resulting text while preserving the original.
Incremental resultsEach completed item is saved immediately, so successful work remains available if a later item fails.
Budget protectionThe Actor checks the Apify run spending limit before metadata collection and paid audio processing.

Verified result

In a real public Reel test, the Actor processed 35.78 seconds of Spanish audio and returned:

  • 118 transcribed words
  • 9 sentence-level timestamp segments
  • word-level WebVTT timing
  • creator, caption, date, duration, and media metadata
  • one result event and one audio-minute event

Actual accuracy depends on audio quality, music, accents, overlapping speakers, and language.

Input options

You can use direct Reel URLs, public profiles, or both in the same run.

Transcribe direct Reel URLs

{
"reelUrls": [
"https://www.instagram.com/reel/SHORTCODE_1/",
"https://www.instagram.com/reel/SHORTCODE_2/"
],
"transcriptionMode": "captions-first",
"language": "auto"
}

Transcribe recent Reels from profiles

{
"usernames": ["natgeo", "bbcnews"],
"resultsLimitPerProfile": 25,
"onlyPostsNewerThan": "30 days",
"skipPinnedPosts": true,
"transcriptionMode": "captions-first",
"language": "auto",
"includeMetadata": true
}

Translate a Reel into English

{
"reelUrls": ["https://www.instagram.com/reel/SHORTCODE/"],
"transcriptionMode": "captions-first",
"translateToEnglish": true
}

Translation uses two AI operations: Whisper Turbo creates the source-language transcript, then a text translation model produces English. The original remains in transcript and the English version is returned in translatedTranscript. It is incompatible with captions-only mode.

Input reference

FieldTypeDefaultDescription
reelUrlsstring array[]Public Reel, video, or supported Instagram post URLs. Maximum 100 per run.
usernamesstring array[]Public profiles whose recent Reels should be discovered. Maximum 20 per run.
resultsLimitPerProfileinteger12Maximum matching Reels collected from each profile.
onlyPostsNewerThanstringemptyRelative or absolute UTC filter such as 7 days, 2 weeks, or 2026-08-01.
skipPinnedPostsbooleantrueSkip pinned Reels that may be older than recent profile content.
transcriptionModestringcaptions-firstChoose captions-first, ai-only, or captions-only.
languagestringautoAutomatic detection or an ISO-639-1 code such as en, es, pt, or fr.
translateToEnglishbooleanfalseAdd an English text translation after AI transcription while preserving the original.
maximumVideoDurationSecondsinteger900Reject unexpectedly long media before it consumes additional run budget.
includeMetadatabooleantrueInclude creator, caption, engagement, date, and duration.

At least one Reel URL or public username is required.

Transcription modes

Uses native Instagram subtitles when available. If no usable subtitle file exists, the Actor transcribes the Reel audio with AI. This normally provides the best balance of speed, coverage, and price.

ai-only

Always processes the audio with AI. Use this when you want consistent AI transcription or when translating speech into English.

captions-only

Returns transcripts only when Instagram provides usable subtitles. It never charges an audio-minute event. Items without captions are returned as uncharged item-level errors.

Output example

{
"url": "https://www.instagram.com/reel/SHORTCODE/",
"shortcode": "SHORTCODE",
"mediaId": "3894730192563454128",
"username": "creator",
"fullName": "Creator Name",
"profileUrl": "https://www.instagram.com/creator/",
"caption": "Original post caption",
"publishedAt": "2026-08-01T18:30:00Z",
"durationSeconds": 35.78,
"language": "es",
"transcript": "Complete spoken content from the Reel...",
"translatedTranscript": "Complete spoken content translated into English...",
"translationLanguage": "en",
"segments": [
{
"start": 0.08,
"end": 2.62,
"text": "First timestamped sentence."
},
{
"start": 2.66,
"end": 6.56,
"text": "Second timestamped sentence."
}
],
"vtt": "WEBVTT\n\n00:00.080 --> 00:02.620\nFirst timestamped sentence.",
"wordCount": 118,
"transcriptionStatus": "succeeded",
"errorMessage": null,
"audioMinutesCharged": 1,
"likeCount": 1250,
"commentCount": 48,
"playCount": 34000,
"shareCount": 75,
"saveCount": 320,
"repostCount": 18,
"extractedAt": "2026-08-03T12:00:00Z"
}

Output fields

CategoryFields
Reel identityurl, shortcode, mediaId
Creatorusername, fullName, profileUrl
Transcripttranscript, segments, vtt, wordCount, language, translatedTranscript, translationLanguage
Post metadatacaption, publishedAt, durationSeconds, isPinned
EngagementlikeCount, commentCount, playCount, shareCount, saveCount, repostCount
CollectionextractedAt
Processing statustranscriptionStatus, errorMessage, audioMinutesCharged

Metadata and engagement fields depend on what Instagram makes available for each Reel.

Pay-per-event pricing

The Actor uses two transparent events:

EventCharged when
resultOne complete Reel transcript is successfully delivered.
audio-minuteOne started minute of audio is processed with AI.

Native Instagram subtitles do not trigger audio-minute. A 61-second Reel without usable captions triggers one result and two audio-minute events. Failed items do not trigger a successful result charge.

Set maxTotalChargeUsd when starting a run through the API to control the maximum allowed spend. Before any provider request, the Actor verifies that the remaining run budget can fund at least one result plus one audio-minute whenever AI is enabled. Before each AI call, it reserves the result price and every started audio minute required by that Reel. If the combined amount does not fit, the Actor stops without downloading the media or calling the transcription API.

With the recommended no-discount prices, use a run limit of at least $0.0100 for an AI-enabled run. This includes the first $0.0095 result-and-audio bundle plus the automatic Actor-start event.

API example

from apify_client import ApifyClient
client = ApifyClient("<APIFY_API_TOKEN>")
run = client.actor("YOUR_USERNAME/instagram-reels-transcript-scraper").call(
run_input={
"usernames": ["natgeo"],
"resultsLimitPerProfile": 12,
"onlyPostsNewerThan": "30 days",
"transcriptionMode": "captions-first",
},
max_total_charge_usd=1.00,
)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)

You can also run the Actor from Apify Tasks, schedules, webhooks, Make, Zapier, or any HTTP client.

  • Competitor content analysis: compare spoken hooks, offers, products, topics, and calls to action.
  • Creator monitoring: schedule profiles and collect transcripts from newly published Reels.
  • LLM and RAG datasets: turn video speech into text for summarization, question answering, and semantic search.
  • Subtitle generation: export timestamped segments or WebVTT for editing and publishing workflows.
  • Content repurposing: transform Reel speech into articles, newsletters, scripts, briefs, or social posts.
  • Campaign research: combine spoken claims with captions, dates, creators, and available engagement metrics.
  • Searchable archives: make large collections of public Instagram videos searchable by their spoken content.
  • Multilingual research: transcribe supported languages or translate audio into English.

FAQ

Can I transcribe an Instagram Reel without logging in?

Yes. The Actor processes public Instagram content without requiring your Instagram cookies, password, or sessionid.

Can I transcribe all recent Reels from an Instagram profile?

Yes. Enter one or more public usernames, choose a result limit, and optionally add a date filter. The Actor discovers and processes matching Reels automatically.

Does the output include timestamps?

Yes. Results include sentence-level start and end timestamps. AI results can also include WebVTT timing suitable for subtitle workflows.

Can it translate Instagram Reels into English?

Yes. Enable translateToEnglish. Whisper Turbo first returns the original-language transcript, and a second AI operation returns English in translatedTranscript. The detected source language remains in language.

Why are some metadata fields empty?

Instagram does not expose every engagement metric publicly for every Reel. In particular, save and repost counts are commonly unavailable. The Actor omits unavailable metrics instead of returning a misleading zero; use the All fields dataset view to inspect every field that was supplied for a Reel.

Are private profiles supported?

No. Only publicly accessible Instagram content is supported.

Responsible use and limitations

  • Process only public Instagram content you are legally permitted to use.
  • Respect copyright, privacy, Instagram's terms, Apify's terms, and applicable law.
  • Do not use the Actor for harassment, invasive profiling, or unlawful surveillance.
  • Transcription accuracy varies with audio quality, noise, music, accents, and overlapping speech.
  • Instagram and upstream data structures can change, which may temporarily affect availability.
  • Media and subtitle links are temporary and may expire.