Instagram Post Text Extractor avatar

Instagram Post Text Extractor

Pricing

from $47.00 / 1,000 posts

Go to Apify Store
Instagram Post Text Extractor

Instagram Post Text Extractor

Extract in-image text from public Instagram posts and carousels—overlays, captions, quotes, stickers, hashtags, and @mentions—with per-image results, type, position, language, and confidence. Each carousel slide processed separately. No login. Built for OCR, brand monitoring, and content intel.

Pricing

from $47.00 / 1,000 posts

Rating

0.0

(0)

Developer

rainminer

rainminer

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

The Instagram Post Text Extractor is an Apify Actor that reads public Instagram posts and returns every piece of text visible inside the images as structured data. Businesses burn text, quotes, prices, offers, and announcements directly onto their post images and carousels — this Actor unlocks that content for search, analysis, and database ingestion without manual review.

Every image in a post is processed individually — including each slide of a multi-image carousel — by AI vision, and the results are returned as a structured dataset of text segments per image, each with its type, position, language, and confidence rating.


Key Features

  • Full in-image text extraction: Captures text overlays, burned-in captions, quotes, Instagram stickers, watermarks, hashtags, and @mentions.
  • Carousel-aware: Processes every image in a multi-image carousel separately and reports which image each text segment came from.
  • Type classification: Distinguishes overlay, caption, quote, 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 the image.
  • Confidence rating: High/medium/low rating based on text clarity in the image.
  • No login required: Works with any public Instagram post.

Why Extract Text from Posts?

Instagram posts and carousels are a primary publishing surface for businesses, creators, and brands. Menu specials, product drops, event announcements, hiring notices, quote cards, and pricing updates are routinely shared only as text baked into images — never structured or indexed. This Actor makes that content machine-readable for:

  • Content intelligence and brand monitoring tracking what competitors publish in posts.
  • Food and hospitality capturing daily specials and seasonal menus shared as image posts.
  • Event aggregators extracting event names, dates, and lineup text from promotional carousels.
  • 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 post text to readable formats.

Who Is It For?

  • Marketing and analytics teams monitoring brand or competitor post content at scale.
  • Product and data teams building structured datasets from Instagram image content.
  • Developers integrating post text extraction into discovery or monitoring pipelines.
  • Researchers studying visual communication trends in social media imagery.

Input Schema

{
"urls": [
"https://www.instagram.com/p/DaVyCIrETvD/",
"https://www.instagram.com/p/Dagut_GRUzu/"
],
"maxItems": 10
}

urls is required. All other fields are optional.

FieldTypeDefaultDescription
urlsArray of stringsPublic Instagram post URLs (/p/...), single or carousel
maxItemsInteger10Maximum number of posts to process in a single run

Output Schema

Each dataset item represents one post, with a per-slide breakdown of the text found:

{
"url": "https://www.instagram.com/p/DaVyCIrETvD/",
"shortcode": "DaVyCIrETvD",
"slideCount": 2,
"slides": [
{
"slide": 1,
"textSegments": [
{
"text": "SUMMER SALE — 30% OFF",
"type": "overlay",
"position": "center",
"language": "en",
"confidence": "high"
}
]
},
{
"slide": 2,
"textSegments": []
}
],
"scrapedAt": "2026-07-08T08:15:42.000Z"
}
FieldDescription
urlNormalized canonical URL of the post
shortcodeInstagram shortcode (e.g. DaVyCIrETvD)
slideCountNumber of carousel slides processed for this post
slidesArray of per-slide results (one entry per carousel image)
slides[].slideSlide number within the post (1 = first slide)
slides[].textSegmentsArray of all text elements found on that slide
slides[].textSegments[].textThe visible text content as it appears in the image
slides[].textSegments[].typeoverlay | caption | quote | sticker | watermark | hashtag | mention | other
slides[].textSegments[].positiontop | center | bottom — vertical position, null if unclear
slides[].textSegments[].languageISO 639-1 language code detected from the text, e.g. "en"null if indeterminate
slides[].textSegments[].confidencehigh | medium | low — extraction confidence based on text clarity
scrapedAtISO timestamp of when this post was processed

How It Works

  1. Validate inputs — each URL is checked against accepted Instagram post URL patterns and normalized to a canonical form.
  2. Fetch images — every image in the post is retrieved, including all slides of a carousel, without requiring a browser or login session.
  3. AI text extraction — each image is analyzed by AI vision to extract all visible text.
  4. Structured output — each text segment is classified by type, position, language, and confidence.
  5. Push to dataset — one dataset row is pushed per post containing a per-image breakdown of its text.

Notes and Limitations

  • Public posts only: Private accounts and posts that require login to view are not supported.
  • Image availability: Deleted or expired posts will fail to download and are skipped with a warning.
  • OCR accuracy: Stylized fonts, small text, 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.
  • Images only: Video slides within a carousel are not analyzed — use the Instagram Reel Text Extractor for video content.

Image Credit

Image credit: instagram.com