Instagram Tagged Posts Scraper – UGC Export
Pricing
from $1.00 / 1,000 results
Instagram Tagged Posts Scraper – UGC Export
Scrape public posts from Instagram profile Tagged tabs with pagination. Export captions, media, engagement, original authors, and tagged profile details.
Pricing
from $1.00 / 1,000 results
Rating
0.0
(0)
Developer
ScrapingMonkey
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Collect public posts from an Instagram profile's Tagged tab with pagination. Instagram Tagged Posts Scraper accepts plain usernames and returns one dataset row per tagged post with its caption, media, engagement, original author, and the profile that was tagged.
Use it for user-generated content discovery, brand monitoring, campaign research, creator mentions, and public tagged-post datasets without Instagram credentials or cookies.
| At a glance | Details |
|---|---|
| 📥 Input | Plain Instagram usernames and pages per profile |
| 📤 Output | Tagged post URL, media, caption, counts, author, tagged profile, and image variants |
| 📄 Pagination | Up to 12 tagged posts per requested page when available |
| 🔐 Login required | No |
| ⚡ Processing | Up to 5 requests concurrently with automatic retries |
| 💾 Delivery | Apify dataset for JSON, CSV, Excel, XML, API, and integrations |
What the Instagram Tagged Posts Scraper collects 🏷️
The Actor targets posts in which the selected profile is tagged. This is different from the profile's own feed: the post author may be another account, while tagged_profile identifies the username supplied as input.
Success rows can include:
- Canonical post URL, ID, PK, shortcode, post type, product type, and media type
- Main image, dimensions, and all available image variants
- Caption and caption ID
- Like, comment, and view counts when public
- Accessibility text, commenting state, hidden-count state, and pinned state
- Carousel item count
- Original post author's ID, PK, username, and profile URL
- Full tagged-profile identity, pictures, privacy, and verification
How to scrape tagged Instagram posts 🚀
- Enter one or more usernames without
@. - Set
pagesPerProfileto the number of Tagged pages to request. - Start the Actor.
- Review each post as an independent dataset row.
- Export the results or connect them to your workflow.
{"inputList": ["nike","nasa"],"pagesPerProfile": 2}
Profile URLs are intentionally not accepted. Duplicate usernames and duplicate tagged posts are deduplicated within a run.
Tagged-post output fields 📦
| Field | Type | Meaning |
|---|---|---|
input | string | Source profile username |
status | string | success or failed |
image_url | string or null | Main post image or thumbnail |
url | string or null | Canonical Instagram post URL |
id, pk, code | string or null | Post identifiers and shortcode |
type, product_type | string or null | Normalized and Instagram product types |
media_type | integer or null | Instagram numeric media type |
caption, caption_id | string or null | Public caption and caption identifier |
like_count, comment_count, view_count | integer or null | Public engagement metrics |
width, height | integer or null | Media dimensions |
accessibility_caption | string or null | Public accessibility description |
comments_disabled | boolean or null | Whether comments are disabled |
counts_hidden | boolean or null | Whether counts are hidden |
is_pinned | boolean or null | Source pinned state when exposed |
carousel_media_count | integer or null | Number of carousel children |
author | object or null | Account that published the post |
tagged_profile | object or null | Profile supplied as input |
image_versions | array or null | Available image or thumbnail sizes |
Complete successful dataset item:
{"input": "nike","status": "success","image_url": "https://instagram.example/tagged-post.jpg","url": "https://www.instagram.com/p/EXAMPLE123/","id": "1234567890123456789_2002","pk": "1234567890123456789","code": "EXAMPLE123","type": "image","product_type": "feed","media_type": 1,"caption": "A public post featuring Nike","caption_id": "987654321","like_count": 3400,"comment_count": 76,"view_count": null,"width": 1080,"height": 1350,"accessibility_caption": "Runner wearing sports shoes","comments_disabled": false,"counts_hidden": false,"is_pinned": false,"carousel_media_count": 0,"author": {"id": "2002","pk": "2002","username": "examplecreator","profile_url": "https://www.instagram.com/examplecreator/"},"tagged_profile": {"profile_picture_url": "https://instagram.example/nike.jpg","profile_picture_url_hd": "https://instagram.example/nike-hd.jpg","username": "nike","name": "Nike","id": "13460080","pk": "13460080","profile_url": "https://www.instagram.com/nike/","is_verified": true,"is_private": false},"image_versions": [{"url": "https://instagram.example/tagged-post-1080.jpg","width": 1080,"height": 1350}]}
Complete failed dataset item:
{"input": "unavailable_profile","status": "failed","image_url": null,"url": null,"id": null,"pk": null,"code": null,"type": null,"product_type": null,"media_type": null,"caption": null,"caption_id": null,"like_count": null,"comment_count": null,"view_count": null,"width": null,"height": null,"accessibility_caption": null,"comments_disabled": null,"counts_hidden": null,"is_pinned": null,"carousel_media_count": null,"author": null,"tagged_profile": null,"image_versions": null}
Instagram CDN image URLs are temporary. Download authorized assets promptly if permanent retention is required.
Input and pagination settings ⚙️
| Parameter | Type | Required | Default | Rules |
|---|---|---|---|---|
inputList | array of strings | Yes | None | At least one plain Instagram username |
pagesPerProfile | integer | No | 1 | Minimum 1 |
Each requested page can expose up to 12 tagged posts. The actual number may be smaller because Instagram reaches the end of the feed, returns overlapping entries, or hides unavailable content. Page count controls pagination attempts, not a guaranteed row total.
Results are saved page by page, protecting earlier successful output if a later continuation request fails.
Tagged Instagram data use cases 🎯
User-generated content discovery
Find public posts created by customers, fans, publishers, and creators that tag a brand or account.
Campaign monitoring
Review tagged content around launches, events, sponsorships, ambassador programs, and hashtag campaigns.
Creator research
Identify authors who tag relevant public profiles and qualify their posts by visible engagement.
Brand safety and moderation
Send captions, media references, author identity, and tagging context into an authorized review workflow.
Social proof collection
Build a structured shortlist of public tagged posts for manual permission, curation, or reporting.
Pricing and saved results 💰
The Actor's Pricing tab shows the current pricing model and rate. It is the authoritative source because Store pricing can change.
Under dataset-item pricing:
- Each unique tagged post saved as
successis one result. - An invalid or unavailable username, or a page that repeatedly fails, can create a
failedresult. - Request retries do not create separate rows.
- More requested pages can produce more billable post rows.
Two full pages can return up to approximately 24 unique tagged posts for one profile, but Instagram may provide fewer.
Instagram Tagged Posts API 🔌
Replace $ACTOR_ID with the Actor ID from its API tab and $APIFY_TOKEN with your token.
curl -X POST "https://api.apify.com/v2/acts/$ACTOR_ID/runs?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"inputList":["nike"],"pagesPerProfile":2}'
Automate runs with schedules and webhooks, then deliver datasets to Google Sheets, Make, Zapier, cloud storage, BI systems, or custom applications.
Reliability, retries, and data boundaries ⚠️
The Actor handles up to five requests concurrently and retries temporary network failures, throttling, selected HTTP errors, timeouts, and blocked redirects. Invalid username syntax is not retried unnecessarily.
One bad profile does not stop the remaining batch. A complete Actor run can still fail for infrastructure-level issues such as startup failure, unavailable Apify storage, or an unrecoverable dataset save error.
Tagged feeds are controlled by Instagram. Private, deleted, renamed, restricted, empty, or login-gated profiles may not expose results. Individual posts can disappear, and ordering can change between runs. Optional counts and accessibility fields may be null.
Frequently asked questions ❓
Are these posts published by the input profile?
Not necessarily. They are posts where the input profile is tagged. The publishing account is stored in author.
Can I submit profile URLs?
No. Use plain usernames without @.
Does the Actor return every historical tagged post?
It paginates the public Tagged feed up to the requested page count. Instagram decides what is publicly available and whether a next page exists.
Does it require an Instagram login?
No Instagram credentials or cookies are required.
Does carousel_media_count include every slide's details?
This feed Actor reports the child count when exposed. Use Post Details or Carousel Details to retrieve deeper child-media data for selected URLs.
Why can a valid profile have no rows?
It may have no public tagged content or Instagram may restrict that feed. The Actor records failure where the source cannot provide usable results.
Support, responsible use, and related actors 🛟
For a reproducible problem, provide the run ID, approximate time, page count, and a safe public username through the support channel. Never publish tokens or proxy credentials.
Use collected public data responsibly. Follow applicable privacy, copyright, data-protection, contractual, and platform rules, especially before outreach or republishing user-generated content.