Instagram Reel Text Extractor avatar

Instagram Reel Text Extractor

Pricing

from $1.00 / 1,000 reels

Go to Apify Store
Instagram Reel Text Extractor

Instagram Reel Text Extractor

AI-powered on-video text from Instagram Reels. Full-screen, timestamped, multilingual OCR for Instagram Reels that classifies every visible text element (overlays, captions, stickers, watermarks, hashtags, mentions), including screen position and confidence, with no login required.

Pricing

from $1.00 / 1,000 reels

Rating

0.0

(0)

Developer

rainminer

rainminer

Maintained by Community

Actor stats

1

Bookmarked

7

Total users

3

Monthly active users

15 days ago

Last modified

Share

The Instagram Reel Text Extractor is an Apify Actor that reads public Instagram Reels and returns every piece of visible on-screen text as structured data. Businesses overlay text, captions, stickers, hashtags, and watermarks directly onto their videos — this Actor unlocks that content for search, analysis, and database ingestion without manual review.

Each reel is processed by AI vision and the results are returned as a flat, structured dataset of text segments — each with its timestamp, type, screen position, language, and confidence rating.


Key Features

  • Full on-screen text extraction: Captures animated overlays, editor captions, Instagram stickers, watermarks, hashtags, and @mentions.
  • Timestamp-aware: Records the MM:SS timestamp when each text element first appears.
  • Type classification: Distinguishes overlay, caption, sticker, watermark, hashtag, mention, and other text types.
  • Multilingual: Detects the ISO 639-1 language code for each segment from the text itself.
  • Position detection: Classifies text placement as top, center, or bottom of screen.
  • Confidence rating: High/medium/low rating based on text clarity in the video frame.
  • No login required: Works with any public Instagram Reel.

Why Extract Text from Reels?

Instagram Reels have become a primary publishing surface for businesses, creators, and brands. Menu specials, product drops, event announcements, hiring notices, and pricing updates are routinely shared only as Reel overlays — never structured or indexed. This Actor makes that content machine-readable for:

  • Content intelligence and brand monitoring tracking what competitors publish in Reels.
  • Food and hospitality capturing daily specials and seasonal menus announced via video.
  • Event aggregators extracting event names, dates, and lineup text from promotional Reels.
  • Retail and e-commerce indexing product drops, discount codes, and launch dates.
  • Market research tracking pricing, offers, and messaging trends across accounts.
  • Accessibility tools converting visual Reel text to readable formats.

Who Is It For?

  • Marketing and analytics teams monitoring brand or competitor Reel content at scale.
  • Product and data teams building structured datasets from Instagram video content.
  • Developers integrating Reel text extraction into discovery or monitoring pipelines.
  • Researchers studying visual communication trends in short-form video.

Input Schema

{
"reelUrls": [
"https://www.instagram.com/reel/DY8NM9WJfM8/"
],
"maxItems": 10
}

reelUrls is required. All other fields are optional.

FieldTypeDefaultDescription
reelUrlsArray of stringsPublic Instagram Reel URLs (/reel/... or /p/...)
maxItemsInteger10Maximum number of reels to process in a single run

Output Schema

Each dataset item represents one reel and all the on-screen text found in it:

{
"reelUrl": "https://www.instagram.com/reel/DY8NM9WJfM8/",
"shortcode": "DY8NM9WJfM8",
"textSegments": [
{
"text": "POV: Getting robbed at gunpoint but you're fat",
"timestamp": "00:00",
"type": "overlay",
"position": "top",
"language": "en",
"confidence": "high"
}
],
"scrapedAt": "2026-06-01T08:15:42.000Z"
}
FieldDescription
reelUrlNormalized canonical URL of the reel
shortcodeInstagram shortcode (e.g. ABC123)
textSegmentsArray of all on-screen text elements found
textSegments[].textThe visible text content as it appears on screen
textSegments[].timestampMM:SS when the text first appears — null if indeterminate
textSegments[].typeoverlay | caption | sticker | watermark | hashtag | mention | other
textSegments[].positiontop | center | bottom — vertical screen position, null if it moves
textSegments[].languageISO 639-1 language code detected from the text, e.g. "en", "es"null if indeterminate
textSegments[].confidencehigh | medium | low — extraction confidence based on text clarity
scrapedAtISO timestamp of when this reel was processed

How It Works

  1. Validate inputs — each URL is checked against accepted Instagram Reel URL patterns and normalized to a canonical form.
  2. Fetch video — the Reel is retrieved without requiring a browser or login session.
  3. AI text extraction — the video is analyzed by AI vision to extract all visible on-screen text in a single pass.
  4. Structured output — each text segment is classified by type, position, language, and confidence.
  5. Push to dataset — one dataset row is pushed per reel containing all its text segments.

Notes and Limitations

  • Public reels only: Private accounts and reels that require login to view are not supported.
  • Video availability: Deleted or expired reels will fail to download and are skipped with a warning.
  • OCR accuracy: Fast-moving, small-font, or low-contrast text may yield lower confidence extractions.
  • Rate limiting: Instagram may rate-limit requests at high volume. Reduce concurrency or add delays between runs if you encounter failures.
  • Video size: Very large Reels are skipped automatically.
  • Audio not included: Spoken content is intentionally excluded — only text visually rendered on screen is extracted.