Instagram Scraper
Pricing
from $1.50 / 1,000 results
Instagram Scraper
Scrape and download Instagram posts, profiles, places, hashtags, photos, and comments. Get data from Instagram using one or more Instagram URLs or search queries. Export scraped data, run the scraper via API, schedule and monitor runs or integrate with other tools.
Pricing
from $1.50 / 1,000 results
Rating
4.7
(464)
Developer
Apify
Maintained by ApifyActor stats
4K
Bookmarked
308K
Total users
32K
Monthly active users
18 hours
Issues response
2 hours ago
Last modified
Categories
Share
What can Instagram Scraper do?
Instagram Scraper extracts public data from across Instagram in a single tool: posts and reels from a profile, comments on a single video, mentions of a brand, profile details for a creator, place metadata for a city, or volume and reach for a hashtag. Add a URL match it with one of the 5 available content types and you can:
| ๐ฆ What you can extract | โ๏ธ Features & integrations |
|---|---|
|
๐ท Posts and carousels from profiles, hashtagged posts, or tagged posts |
๐ Search Instagram by user, hashtag, or place |
If you're in the market for influencer discovery, trend tracking, competitor monitoring, local business discovery, content and image analysis, UGC discovery, sentiment analysis, campaign performance tracking, brand monitoring, and more, you can get it all from a single tool.
What data can I scrape from Instagram?
Instagram Scraper is the unofficial Instagram API that 300K+ users rely on to pull the public data Instagram cut off from its official API in 2020. No Business or Creator account, no OAuth, no limits on public data. You get the content, context, engagement metrics, and metadata behind any social media insight:
-
Posts and reels: what was posted, how it landed, who's around it. Captions, hashtags, mentions, image and video URLs, carousel children, engagement (likes, comments, views, plays, first + latest comments), and context (location, owner, tagged users, co-authors, music). Plus
shortCode,url,type, andproductTypefor joining and filtering. -
Mentions: who's tagging you. Same shape as a post, filtered to posts where a target profile is tagged. Drop in a profile URL, get every public post pointing at it.
-
Comments: what people are saying. Text, author identity (username, ID, profile pic, verified status), timestamp, likes, replies, and links to the comment and parent post.
-
Profiles: who's behind the account. Bio, full name, follower/following counts, posts and highlight reel counts, verified and business status.
-
Hashtags: how big and how reachable. Post count, posts per day, related-tag clusters bucketed by reach tier (frequent, average, rare). Useful for finding less-saturated adjacent tags.
-
Places: where it happened. Name, coordinates, address (city, country, category), post count, top and latest posts.
You can scrape from an existing list of URLs (profile, post, reel, hashtag, or place), or discover and scrape by running a search query for matching profiles, hashtags, or places.
Need more? Try these dedicated scrapers for features and data not covered by the main Instagram Scraper:
- ๐ข Instagram Ads Scraper: ads and creatives data with pricing enrichment
- ๐๏ธ Instagram Reel Scraper: reels with share counts and transcripts, plus a reels download option
- ๐ค Instagram Profile Scraper: profile extraction with location and verification data
- ๐ค Brand Collaboration Scraper: find brand and influencer collaborations across Instagram
- ๐ฌ Export Instagram Comments and Posts: scrape posts and their comments in one run
How much will scraping Instagram cost?
Instagram Scraper uses a pay-per-event (PPE) pricing model, where one result equals one scraped item (a post, reel, comment, profile, hashtag, or place). On the Free plan, it costs $2.70 per 1,000 results, with no discount applied.
Paid plans offer discounted rates and higher monthly credit. For example, the Starter plan charges $2.30 per 1,000 results, which allows you to scrape over 16,900 results per month. The Scale and Business plans reduce the price to $1.90 with 104,700 results per month, and $1.50 with 666,000 results per month, respectively. Check the pricing tab for full details.
How do I use Instagram Scraper?
Instagram Scraper was designed to be easy to start with, even if you've never scraped a website before. Here's how to extract Instagram data with this tool:
- Create a free Apify account using your email.
- Open Instagram Scraper in Apify Console.
- Pick what you want to scrape under Content to scrape: Posts, Reels, Comments, Mentions, or Details for profiles, hashtags, or places.
- Paste one or more Instagram URLs matching that content type.
- Set how many results you want per URL under Results limit, and optionally filter by date.
- Alternatively, run a search query. Enter one or more keywords and pick a search type: hashtag, profile, or place.
- Click Save & Start and wait for the data to be extracted.
- Download your dataset in JSON, CSV, Excel, or XML, or pull it programmatically via the Apify API.
For a step-by-step walkthrough with screenshots, follow our How to scrape Instagram tutorial ๐, or watch this video guide:
โฌ๏ธ Input
Instagram Scraper has two input modes: scrape by URL when you already know which pages to scrape, or discover by search query when you don't. Pick one mode per run; you can't mix them, and URLs always take priority if both are filled in.
Mode 1: Scrape by URL
- Paste one or more Instagram URLs (or profile IDs). Use Bulk edit to add many at once. Then choose:
- Content to scrape โ the result type (posts, reels, comments, mentions, or details)
- Results limit โ how many results per URL
- Filter by date (optional) โ only return content newer than a date or relative period (UTC)
The URL type drives what's returned:
| Paste this URL | And you can get |
|---|---|
| Profile URL or Profile ID | Profile details, posts, reels, or profile mentions |
| Post URL or Reel URL | Post/reel details or its comments |
| Hashtag URL | Hashtagged posts or reels, or hashtag volume |
| Location URL or Audio URL | Place or audio details |
Mode 2: Discover by search query
Enter one or more keywords (comma-separated, e.g. travel, fitness) and pick a search type. Enter hashtags as plaintext (travel, not #travel).
| Search type | What it returns |
|---|---|
hashtag | Hashtag volume and related hashtags matching your query |
place | Tagged places and small businesses matching your query |
user | Users (and content from users) matching your query |
โฌ๏ธ Output and setup
The most important thing to know is that URL type drives output schema. Hashtag, location, audio, and explore URLs return their respective metadata even when paired with another content mode.
Results land in a dataset in the Storage tab. View as a table, download in JSON, CSV, Excel, or XML, or pull via API. Note that different outputs cannot be combined in a single run. Each content type produces a different output schema. Samples below.
๐ธ Posts and carousels
Posts and carousels from a profile, hashtag, or place. Note: you can extract posts from a known list of profiles, or you can discover posts by hashtags and places.
Supported URL inputs:
https://www.instagram.com/natgeo/(profile)https://www.instagram.com/197622247/(profile ID)https://www.instagram.com/p/DLNsnpUTdVS/(post)https://www.instagram.com/explore/tags/crossfit/(hashtag)https://www.instagram.com/explore/locations/7538318/copenhagen/(place)
Posts data sample
{"inputUrl": "https://www.instagram.com/p/DZxvMgyH8yR/","id": "3923124318436838545","type": "Image","shortCode": "DZxvMgyH8yR","caption": "In the Democratic Republic of the Congo, photographer @carstenpeter followed a team of scientists into the crater of Mount Nyiragongo, where they crossed the cooled surface of a lava lake that reached nearly 1,800ยฐF (982ยฐC). In 2021, an eruption sent a river of lava to the outskirts of nearby Goma, home to 1.5 million people.\n\nHead to the link in bio to uncover more iconic stories and images like this in our Nat Geo archive.","hashtags": [],"mentions": ["carstenpeter"],"url": "https://www.instagram.com/p/DZxvMgyH8yR/","commentsCount": 110,"firstComment": "runnin up that hill","latestComments": [{"id": "18185100808388160","text": "runnin up that hill","ownerUsername": "liljuliff","timestamp": "2026-06-22T08:05:38.000Z","likesCount": 1},{"id": "18107281966978531","text": "is bro in creative mode","ownerUsername": "csukitch","timestamp": "2026-06-22T07:57:01.000Z","likesCount": 0}],"dimensionsHeight": 718,"dimensionsWidth": 1080,"displayUrl": "https://scontent.cdninstagram.com/.../722859170_n.jpg","images": [],"alt": null,"likesCount": 55952,"timestamp": "2026-06-20T10:00:04.000Z","childPosts": [],"ownerFullName": "National Geographic","ownerUsername": "natgeo","ownerId": "787132","isCommentsDisabled": false}
๐๏ธ Reels
Reels from a profile, hashtag, or reel page. Note: you can extract reels from a known list of profiles, or you can discover reels by hashtags and places.
Supported URL inputs:
https://www.instagram.com/natgeo/(profile)https://www.instagram.com/humansofny/reels/(reels section)https://www.instagram.com/reel/CigMSGeD4Hd/(single reel)https://www.instagram.com/reels/CigMSGeD4Hd/(plural form)https://www.instagram.com/explore/tags/crossfit/(hashtag)
Or a search query:
searchType: "hashtag", e.g."travel"or"travel, fitness"
Reels data sample
{"id": "3913028191006298064","type": "Video","shortCode": "DZN3mhZBQ_Q","caption": "The universe is full of clues hidden in light, and Webb has tools to find them.\n\nIn this video, learn about some of the most exciting discoveries Webb has made through spectroscopy, from mapping carbon dioxide on Jupiter's moon Europa, to characterizing the earliest known galaxies, to measuring cloud cover on a distant exoplanet.","hashtags": [],"mentions": [],"url": "https://www.instagram.com/p/DZN3mhZBQ_Q/","commentsCount": 92,"dimensionsHeight": 1920,"dimensionsWidth": 1080,"images": ["https://scontent.cdninstagram.com/.../715570175_n.jpg"],"videoUrl": "https://scontent.cdninstagram.com/.../AQNAWZ3Z8McL43Do9rcY6i8PMk.mp4","likesCount": 11481,"timestamp": "2026-06-05T19:58:30.000Z","ownerFullName": "NASA Webb Telescope","ownerUsername": "nasawebb","ownerId": "549313808","isPinned": true,"productType": "clips","videoDuration": 228,"inputUrl": "https://www.instagram.com/nasawebb/reels/","firstComment": "hi :)","latestComments": [{"id": "18103001009006012","text": "hi :)","ownerUsername": "lina.mov1","timestamp": "2026-06-18T06:36:30.000Z","likesCount": 1}],"displayUrl": "https://scontent.cdninstagram.com/.../715570175_n.jpg","audioUrl": "https://scontent.cdninstagram.com/.../AQPKnYITuQNYL1nTDTxgShU8ZT.mp4","alt": null,"videoViewCount": 41365,"videoPlayCount": 241820,"childPosts": [],"musicInfo": {"artist_name": "nasawebb","song_name": "Original audio","uses_original_audio": true,"should_mute_audio": false,"should_mute_audio_reason": "","audio_id": "27237433435884969"},"isCommentsDisabled": false}
๐ฌ Comments
Comments from a single post or reel. Search queries are not supported for comments; only direct post or reel URLs.
Supported URL inputs:
https://www.instagram.com/p/DN8-GjPkgjS/(post, shortCode)https://www.instagram.com/p/3369450800358839406/(post, ID)https://www.instagram.com/reel/CigMSGeD4Hd/(reel, shortCode)https://www.instagram.com/reel/3515099125383817606/(reel, ID)
Comments data sample
{"postUrl": "https://www.instagram.com/p/DZ5T2XPllXv/","commentUrl": "https://www.instagram.com/p/DZ5T2XPllXv/c/18093536360613690","id": "18093536360613690","text": "We love you NASA ๐๐๐","ownerUsername": "mavideniz5521__","ownerProfilePicUrl": "https://scontent-ord5-3.cdninstagram.com/v/t51.2885-19/410567170_365154746196531_3259133934415110146_n.jpg?stp=dst-jpg_s150x150_tt6&_nc_cat=107&ccb=7-5&_nc_sid=f7ccc5&efg=eyJ2ZW5jb2RlX3RhZyI6InByb2ZpbGVfcGljLnd3dy4xMDgwLkMzIn0%3D&_nc_ohc=9sOZurNh10wQ7kNvwH2lslG&_nc_oc=Adq1_pie8-u-2EtJYEl_qHGdbHVPEViwwdaNVTeRuVtcy0yVD-YcEBgzf7WOYwalh7E&_nc_zt=24&_nc_ht=scontent-ord5-3.cdninstagram.com&_nc_ss=7ca8c&oh=00_Af_b-N0KUNf3uoWohP_2OjEfMwIGWeIIz9ADUutHKCs-Bg&oe=6A42E2E1","timestamp": "2026-06-22T17:24:20.000Z","repliesCount": null,"replies": null,"likesCount": 4,"owner": {"username": "mavideniz5521__","profile_pic_url": "https://scontent-ord5-3.cdninstagram.com/v/t51.2885-19/410567170_365154746196531_3259133934415110146_n.jpg?stp=dst-jpg_s150x150_tt6&_nc_cat=107&ccb=7-5&_nc_sid=f7ccc5&efg=eyJ2ZW5jb2RlX3RhZyI6InByb2ZpbGVfcGljLnd3dy4xMDgwLkMzIn0%3D&_nc_ohc=9sOZurNh10wQ7kNvwH2lslG&_nc_oc=Adq1_pie8-u-2EtJYEl_qHGdbHVPEViwwdaNVTeRuVtcy0yVD-YcEBgzf7WOYwalh7E&_nc_zt=24&_nc_ht=scontent-ord5-3.cdninstagram.com&_nc_ss=7ca8c&oh=00_Af_b-N0KUNf3uoWohP_2OjEfMwIGWeIIz9ADUutHKCs-Bg&oe=6A42E2E1","is_verified": false,"id": "51071346237","fbid_v2": "17841450947133918","full_name": null,"is_mentionable": null,"is_private": null,"profile_pic_id": null,"latest_reel_media": null}},{"postUrl": "https://www.instagram.com/p/DZ5T2XPllXv/","commentUrl": "https://www.instagram.com/p/DZ5T2XPllXv/c/18077796728279537","id": "18077796728279537","text": "","ownerUsername": "_.chun_chun_maru._","ownerProfilePicUrl": "https://scontent-ord5-3.cdninstagram.com/v/t51.82787-19/726890359_18104011688095194_4173193513048581478_n.jpg?stp=dst-jpg_s150x150_tt6&_nc_cat=110&ccb=7-5&_nc_sid=f7ccc5&efg=eyJ2ZW5jb2RlX3RhZyI6InByb2ZpbGVfcGljLnd3dy4xMDgwLkMzIn0%3D&_nc_ohc=931kF_84KW0Q7kNvwHbqKVS&_nc_oc=AdozP0GFEU6uuF4FSGkA2UDIP66AFkSTgAkYspRYNcO-UkG5TPcuJOey5PziWM8LT5s&_nc_zt=24&_nc_ht=scontent-ord5-3.cdninstagram.com&_nc_gid=WLZ1_bwBtUL2keja-Fk0pQ&_nc_ss=7ca8c&oh=00_Af-A4YjociKUQQgaHfcRx9rGPnqDu-SfoZPcF39IufFARA&oe=6A42EBDB","timestamp": "2026-06-22T17:23:24.000Z","repliesCount": null,"replies": null,"likesCount": 220,"owner": {"username": "_.chun_chun_maru._","profile_pic_url": "https://scontent-ord5-3.cdninstagram.com/v/t51.82787-19/726890359_18104011688095194_4173193513048581478_n.jpg?stp=dst-jpg_s150x150_tt6&_nc_cat=110&ccb=7-5&_nc_sid=f7ccc5&efg=eyJ2ZW5jb2RlX3RhZyI6InByb2ZpbGVfcGljLnd3dy4xMDgwLkMzIn0%3D&_nc_ohc=931kF_84KW0Q7kNvwHbqKVS&_nc_oc=AdozP0GFEU6uuF4FSGkA2UDIP66AFkSTgAkYspRYNcO-UkG5TPcuJOey5PziWM8LT5s&_nc_zt=24&_nc_ht=scontent-ord5-3.cdninstagram.com&_nc_gid=WLZ1_bwBtUL2keja-Fk0pQ&_nc_ss=7ca8c&oh=00_Af-A4YjociKUQQgaHfcRx9rGPnqDu-SfoZPcF39IufFARA&oe=6A42EBDB","is_verified": false,"id": "32824791193","fbid_v2": "17841432855813098","full_name": null,"is_mentionable": null,"is_private": null,"profile_pic_id": null,"latest_reel_media": null},"media": {"first_party_cdn_proxied_images": {"fixed_height": {"url": "https://cdn.fbsbx.com/v/t59.2708-21/540281769_1516894573012379_4776510866004392932_n.gif?_nc_cat=101&ccb=1-7&_nc_sid=9dcd69&_nc_ohc=iFOxjs_ckzoQ7kNvwEQgcdT&_nc_oc=AdqKXbOItAjaB9JcMhqx7MtzZOYpbYGT9SPmNuZg_VADfaE-CxwSLGtgXMkMJt3ahZc&_nc_zt=7&_nc_ht=cdn.fbsbx.com&_nc_gid=WLZ1_bwBtUL2keja-Fk0pQ&_nc_ss=7ca8c&oh=03_Q7cD5gH7HrMkFlEK3VsYFNCeWhC8U-5B14403q6m_ejHgqPJWw&oe=6A3EE756"}},"images": {"fixed_height": {"url": "https://static.cdninstagram.com/rsrc.php/v4/yr/r/xg_5YoVlvjp.gif"}},"id": "1570703541415172"}},{"postUrl": "https://www.instagram.com/p/DZ5T2XPllXv/","commentUrl": "https://www.instagram.com/p/DZ5T2XPllXv/c/18119325979762265","id": "18119325979762265","text": "Anda el diablo, ๐๐","ownerUsername": "mr_ventura.j","ownerProfilePicUrl": "https://scontent-ord5-2.cdninstagram.com/v/t51.2885-19/482946673_610886311778265_2668206524915634709_n.jpg?stp=dst-jpg_s150x150_tt6&_nc_cat=104&ccb=7-5&_nc_sid=f7ccc5&efg=eyJ2ZW5jb2RlX3RhZyI6InByb2ZpbGVfcGljLnd3dy44MjguQzMifQ%3D%3D&_nc_ohc=FIVuIcZTqkQQ7kNvwGW3APs&_nc_oc=AdrhdG57pw80dCHmaTX-MRdvfLX5iYJJ8oPnsao0wFImBqMfQn7RGFOY_shbwu7YrFI&_nc_zt=24&_nc_ht=scontent-ord5-2.cdninstagram.com&_nc_ss=7ca8c&oh=00_Af8niwMDCab4KfDLxkew8K3RP6dtHNLKaB4XWb7LQFvacw&oe=6A430456","timestamp": "2026-06-22T17:21:43.000Z","repliesCount": null,"replies": null,"likesCount": 3,"owner": {"username": "mr_ventura.j","profile_pic_url": "https://scontent-ord5-2.cdninstagram.com/v/t51.2885-19/482946673_610886311778265_2668206524915634709_n.jpg?stp=dst-jpg_s150x150_tt6&_nc_cat=104&ccb=7-5&_nc_sid=f7ccc5&efg=eyJ2ZW5jb2RlX3RhZyI6InByb2ZpbGVfcGljLnd3dy44MjguQzMifQ%3D%3D&_nc_ohc=FIVuIcZTqkQQ7kNvwGW3APs&_nc_oc=AdrhdG57pw80dCHmaTX-MRdvfLX5iYJJ8oPnsao0wFImBqMfQn7RGFOY_shbwu7YrFI&_nc_zt=24&_nc_ht=scontent-ord5-2.cdninstagram.com&_nc_ss=7ca8c&oh=00_Af8niwMDCab4KfDLxkew8K3RP6dtHNLKaB4XWb7LQFvacw&oe=6A430456","is_verified": false,"id": "4298523042","fbid_v2": "17841404171287315","full_name": null,"is_mentionable": null,"is_private": null,"profile_pic_id": null,"latest_reel_media": null}},{"postUrl": "https://www.instagram.com/p/DZ5T2XPllXv/","commentUrl": "https://www.instagram.com/p/DZ5T2XPllXv/c/18080756183267307","id": "18080756183267307","text": "Infinite space and yet we donโt know half of our ocean. Stop wasting resources for wondrous shit","ownerUsername": "idlehandsoraidolshands","ownerProfilePicUrl": "https://scontent-ord5-1.cdninstagram.com/v/t51.82787-19/589085310_18161660818396753_1518200406298839070_n.jpg?stp=dst-jpg_s150x150_tt6&_nc_cat=111&ccb=7-5&_nc_sid=f7ccc5&efg=eyJ2ZW5jb2RlX3RhZyI6InByb2ZpbGVfcGljLnd3dy4xMDgwLkMzIn0%3D&_nc_ohc=d00l4vlIpGgQ7kNvwEBivSj&_nc_oc=AdozkM1zr_i2jPZsH2WSUT1OLakC7nzhCKKuD0_E7z9muVqYIAoAS_D-cPoPdPT9yTs&_nc_zt=24&_nc_ht=scontent-ord5-1.cdninstagram.com&_nc_gid=WLZ1_bwBtUL2keja-Fk0pQ&_nc_ss=7ca8c&oh=00_Af-kGNEr1yj0T3kYro6HAF02e-2djfXgIZhezmZaJqxM3w&oe=6A42F8B1","timestamp": "2026-06-22T17:21:19.000Z","repliesCount": null,"replies": null,"likesCount": 1,"owner": {"username": "idlehandsoraidolshands","profile_pic_url": "https://scontent-ord5-1.cdninstagram.com/v/t51.82787-19/589085310_18161660818396753_1518200406298839070_n.jpg?stp=dst-jpg_s150x150_tt6&_nc_cat=111&ccb=7-5&_nc_sid=f7ccc5&efg=eyJ2ZW5jb2RlX3RhZyI6InByb2ZpbGVfcGljLnd3dy4xMDgwLkMzIn0%3D&_nc_ohc=d00l4vlIpGgQ7kNvwEBivSj&_nc_oc=AdozkM1zr_i2jPZsH2WSUT1OLakC7nzhCKKuD0_E7z9muVqYIAoAS_D-cPoPdPT9yTs&_nc_zt=24&_nc_ht=scontent-ord5-1.cdninstagram.com&_nc_gid=WLZ1_bwBtUL2keja-Fk0pQ&_nc_ss=7ca8c&oh=00_Af-kGNEr1yj0T3kYro6HAF02e-2djfXgIZhezmZaJqxM3w&oe=6A42F8B1","is_verified": false,"id": "11823308752","fbid_v2": "17841411902567913","full_name": null,"is_mentionable": null,"is_private": null,"profile_pic_id": null,"latest_reel_media": null}
๐ค Profile details
Profile metadata: bio, followers, posts count, verified status.
Supported URL inputs:
https://www.instagram.com/nike/(username)https://www.instagram.com/13460080/(profile ID)https://www.instagram.com/humansofny/reels/(reels section)
Profile data sample
{"inputUrl": "https://www.instagram.com/humansofny/","id": "242598499","username": "humansofny","url": "https://www.instagram.com/humansofny","fullName": "Humans of New York","biography": "New York City, one story at a time.\nCreated by Brandon Stanton\nDear New York available wherever books are sold.","externalUrls": [{"title": "Join HONY's Patreon","url": "https://bit.ly/4tX4uZt","link_type": "external"}],"externalUrl": "https://bit.ly/4tX4uZt","followersCount": 12613771,"followsCount": 738,"highlightReelCount": 1,"isBusinessAccount": false,"joinedRecently": false,"businessCategoryName": null,"private": false,"verified": true,"profilePicUrl": "https://scontent.cdninstagram.com/.../488057622_n.jpg","profilePicUrlHD": "https://scontent.cdninstagram.com/.../488057622_n.jpg","igtvVideoCount": 0,"postsCount": 5863,"fbid": "17841401154973790","latestPosts": [{"id": "3741054891297971261","type": "Video","shortCode": "DPq5ZpJDZw9","caption": "Dear New York closes on October 19th. It's been the honor and joy of my life to see this take flight...","hashtags": [],"mentions": [],"url": "https://www.instagram.com/p/DPq5ZpJDZw9/","commentsCount": 942,"dimensionsHeight": 1136,"dimensionsWidth": 640,"displayUrl": "https://scontent.cdninstagram.com/.../562558918_n.jpg","videoUrl": "https://scontent.cdninstagram.com/.../AQOZS_IaHCgcUdg7VqoJnQrUb7g.mp4","likesCount": 106869,"videoViewCount": 1024817,"timestamp": "2025-10-11T13:27:07.000Z","ownerUsername": "humansofny","ownerId": "242598499","productType": "clips","isPinned": true,"isCommentsDisabled": false}]}
๐ Place details
Location metadata: name, coordinates, category, post count.
Supported URL inputs:
https://www.instagram.com/explore/locations/7538318/copenhagen/(with slug)https://www.instagram.com/explore/locations/7538318/(ID only)
Place details sample
{"inputUrl": "https://www.instagram.com/explore/locations/218622660/lucerna-music-bar/","name": "Lucerna Music Bar","phone": "","category": "Live Music Venue","media_count": 41997,"price_range": 0,"lat": 50.081113650673,"lng": 14.425622825572,"slug": "lucerna-music-bar","location_id": "218622660","location_address": "Vodiฤkova 36","location_city": "","location_zip": "110 00","ig_business": {"profile": {"profile_pic_url": "https://scontent.cdninstagram.com/.../711514083_n.jpg","username": "lucernamusicbar","id": "571745390"}},"posts": [{"code": "DOyoz3eDwda","id": "3725219327902680922_2428242588","taken_at": 1758300771,"product_type": "carousel_container","username": "rikafiorentina_ride","caption": "getting ready for #ridePRG #INTERPLAYeurope2025\n3 May 2025\nLucerna Music Bar, Prague ๐จ๐ฟ\n#rikafiorentina_ride","like_count": 1,"comment_count": 0,"location": "Lucerna Music Bar","carousel_media": ["https://scontent.cdninstagram.com/.../551088079_n.jpg","https://scontent.cdninstagram.com/.../550191647_n.jpg","https://scontent.cdninstagram.com/.../551959801_n.jpg"]}],"hours": {"status": ""}}
๐ท๏ธ Mentions
Posts where a profile is tagged. Requires a known profile URL or ID.
Supported URL inputs:
https://www.instagram.com/nike/(profile)https://www.instagram.com/197622247/(profile ID)https://www.instagram.com/humansofny/reels/(profile reels section)
Mentions data sample
{"inputUrl": "https://www.instagram.com/humansofny/reels/","id": "3924787795441061311","type": "Sidecar","shortCode": "DZ3pbSeDY2_","caption": "Infinitely grateful to the @humansofny community for helping @stephen_james_campbell start his new life...","hashtags": ["gratefulthankfulblessed", "summersolsticeblessings"],"mentions": ["humansofny", "stephen_james_campbell"],"url": "https://www.instagram.com/p/DZ3pbSeDY2_/","commentsCount": 1,"likesCount": 14,"videoPlayCount": 0,"timestamp": "2026-06-22T01:19:46.000Z","displayUrl": "https://scontent.cdninstagram.com/.../730022154_n.jpg","carouselImageCount": 20,"carouselImages": ["https://scontent.cdninstagram.com/.../730022154_n.jpg","https://scontent.cdninstagram.com/.../730083595_n.jpg","https://scontent.cdninstagram.com/.../729128221_n.jpg"],"ownerFullName": "Jordan Moody","ownerUsername": "dexawild","ownerId": "6521170568","productType": "carousel_container","taggedUsers": ["humansofny", "stephen_james_campbell"],"music": { "title": "Follow The Sun", "artist": "Xavier Rudd" }}
#๏ธโฃ Hashtag details
Hashtag metadata: name, post count, related tags, reach tiers.
Supported URL input:
https://www.instagram.com/explore/tags/crossfit/(hashtag)
Hashtag details sample
{"searchSource": "instagram","name": "fathersday","postsCount": 21310000,"url": "https://www.instagram.com/explore/tags/fathersday","id": "fathersday","posts": "21.31 M","postsPerDay": "โ","difficulty": "","related": [{ "hash": "#giftideas", "info": "51.58 m" },{ "hash": "#gifts", "info": "45.95 m" },{ "hash": "#mothersday", "info": "41.33 m" },{ "hash": "#anniversary", "info": "30.9 m" },{ "hash": "#happymothersday", "info": "16.07 m" },{ "hash": "#giftsforher", "info": "12.35 m" },{ "hash": "#birthdaygift", "info": "10.44 m" },{ "hash": "#happyfathersday", "info": "10.14 m" },{ "hash": "#giftsforhim", "info": "6.48 m" }],"frequent": [{ "hash": "#fathersday", "info": "21.31 m" },{ "hash": "#happyfathersday", "info": "10.14 m" },{ "hash": "#fathersdaygifts", "info": "2.25 m" },{ "hash": "#fathersdaygift", "info": "1.01 m" }],"average": [{ "hash": "#fathersdaygiftideas", "info": "529.04 k" }],"rare": [{ "hash": "#fathersdaycard", "info": "93.89 k" }],"relatedFrequent": [{ "hash": "#love", "info": "2.15 g" },{ "hash": "#dad", "info": "28.71 m" },{ "hash": "#family", "info": "475.12 m" },{ "hash": "#mothersday", "info": "41.33 m" },{ "hash": "#daddy", "info": "18.72 m" },{ "hash": "#instagood", "info": "2.02 g" },{ "hash": "#gift", "info": "91.25 m" },{ "hash": "#birthday", "info": "177.31 m" },{ "hash": "#giftideas", "info": "51.58 m" }],"relatedAverage": [{ "hash": "#vatertag", "info": "656.9 k" }],"relatedRare": [{ "hash": "#dietsantai", "info": "42.03 k" }]}
๐ Place search
Discover Instagram places by keyword. Useful for small business discovery: the search query works best when it combines a city and a local business type, e.g. vintage shop copenhagen.
Search query format:
- Set
searchTypeto"place" - Set
searchto one or more keywords (comma-separated for multiple)
Place search data sample
[{"searchTerm": "vintage shop copenhagen","searchSource": "google","inputUrl": "https://www.instagram.com/explore/locations/1016004479/fn92/","name": "FN92","phone": "+45 22 48 56 86","category": "Clothing store","media_count": 9,"price_range": 3,"lat": 55.71375,"lng": 12.56804,"slug": "fn92","location_id": "1016004479","location_address": "Bryggervangen 76","location_city": "","location_zip": "2100","ig_business": { "profile": null },"hours": { "status": "" }},{"searchTerm": "vintage shop copenhagen","searchSource": "google","inputUrl": "https://www.instagram.com/explore/locations/334251990081960/jerome-vintage/","name": "JEROME VINTAGE","phone": "","category": "Vintage Store","media_count": 582,"price_range": 0,"lat": 55.67437,"lng": 12.54993,"slug": "jerome-vintage","location_id": "334251990081960","location_address": "Vesterbrogade 36","location_city": "","location_zip": "1620","ig_business": {"profile": {"profile_pic_url": "https://scontent.cdninstagram.com/.../350941664_n.jpg","username": "jerome_vintage","id": "1401828165"}},"hours": { "status": "Closed" }},{"searchTerm": "vintage shop copenhagen","searchSource": "google","inputUrl": "https://www.instagram.com/explore/locations/318767455/robb-copenhagen-shop/","name": "Robb Copenhagen (Shop)","phone": "","category": "Local business","media_count": 100,"price_range": 0,"lat": 55.67264,"lng": 12.55788,"slug": "robb-copenhagen-shop","location_id": "318767455","location_address": "Vesterbrogade 35","location_city": "","location_zip": "1654","ig_business": { "profile": null },"posts": [{"code": "vqBeQcAJg5","id": "858505156247984185_506605037","taken_at": 1416561811,"product_type": "feed","username": "robbcopenhagen","caption": "A few vintage BARBAR left // perfect gift 250,- remember we ship to other countries as well ๐๐ #robbcopenhagen #fashion #store #vesterbrogade35 #babarbar #vintage @robbcopenhagen","like_count": 4,"comment_count": 0,"location": "Robb Copenhagen (Shop)","image": "https://scontent.cdninstagram.com/.../632287548_n.jpg"}],"hours": { "status": "" }}]
๐ฅ Profile search
Discover Instagram profiles by keyword. Returns matching users along with their recent posts.
Search query format:
- Set
searchTypeto"profile" - Set
searchto one or more keywords, e.g."nike"or"nike, adidas"(comma-separated for multiple)
Profile search data sample
[{"id": "3924506097334912938","shortCode": "DZ2pYCqgIeq","type": "Sidecar","ownerUsername": "nikesportswear","ownerFullName": "Nike Sportswear","caption": "Bring the love.\n\n@arynasabalenka on set with Nike Court.\n\nAll Love collection available June 22.","url": "https://www.instagram.com/p/DZ2pYCqgIeq/","likesCount": 39779,"commentsCount": 135,"timestamp": "2026-06-21T16:00:05.000Z","taggedUsers": ["arynasabalenka"],"carouselImageCount": 5,"images": ["https://scontent.cdninstagram.com/.../729869204_n.jpg","https://scontent.cdninstagram.com/.../729359762_n.jpg"]},{"id": "3925170511466021648","shortCode": "DZ5AciixUMQ","type": "Video","ownerUsername": "nike","caption": "Time for liftoff @erling and @channingtatum","url": "https://www.instagram.com/p/DZ5AciixUMQ/","likesCount": 10720,"commentsCount": 64,"videoViewCount": 83809,"videoPlayCount": 506507,"videoDuration": 44.75,"timestamp": "2026-06-22T14:01:05.000Z","taggedUsers": ["nikefootball", "erling", "channingtatum"],"displayUrl": "https://scontent.cdninstagram.com/.../729747056_n.jpg","videoUrl": "https://scontent.cdninstagram.com/.../AQPNH7ACF2tBTf.mp4","music": "Original audio - nike"},{"id": "3912183471120209303","shortCode": "DZK3iOsRlWX","type": "Video","ownerUsername": "nike","caption": "It was all going to plan until instincts took overโฆ\n\nRip The Script","url": "https://www.instagram.com/p/DZK3iOsRlWX/","likesCount": 2487337,"commentsCount": 54939,"videoViewCount": 14401109,"videoPlayCount": 59671075,"videoDuration": 359.75,"timestamp": "2026-06-04T15:59:27.000Z","isPinned": true,"taggedUsers": ["nikefootball"],"displayUrl": "https://scontent.cdninstagram.com/.../717154541_n.jpg","videoUrl": "https://scontent.cdninstagram.com/.../AQNKUhlPLvsO.mp4","music": "Original audio - nike"}]
๐๏ธ Hashtag search
Discover related hashtags by keyword. Useful for finding adjacent or less-saturated tags around a topic.
Search query format:
- Set
searchTypeto"hashtag" - Set
searchto one or more keywords, e.g."travel"or"travel, fitness"(comma-separated for multiple)
Hashtag search data sample
[{"searchTerm": "fathersday","searchSource": "google","name": "raddad","postsCount": 0,"url": "https://www.instagram.com/explore/tags/raddad","id": "raddad"},{"searchTerm": "fathersday","searchSource": "google","name": "campdads","postsCount": 117,"url": "https://www.instagram.com/explore/tags/campdads","id": "campdads","posts": "117","postsPerDay": "โ","difficulty": "","related": [],"average": [],"rare": []},{"searchTerm": "fathersday","searchSource": "google","name": "happyfather","postsCount": 25209000,"url": "https://www.instagram.com/explore/tags/happyfather","id": "happyfather","posts": "252.09 K","postsPerDay": "โ","difficulty": "","related": [{ "hash": "#happyfathersday", "info": "10.14 m" }],"average": [{ "hash": "#happyfatherday", "info": "283.05 k" }],"rare": [{ "hash": "#happyfathersdaydad", "info": "59.63 k" }],"relatedFrequent": [{ "hash": "#happy", "info": "737.91 m" },{ "hash": "#father", "info": "46.02 m" },{ "hash": "#love", "info": "2.15 g" }],"relatedAverage": [{ "hash": "#dadsday", "info": "386.01 k" }],"relatedRare": [{ "hash": "#holidayphoto", "info": "74.76 k" }]}]
Notes and exceptions
- URL type drives output schema. Hashtag, location, audio, and explore URLs return their respective metadata even when paired with another content mode.
- URLs take priority over search queries; they can't be combined.
- Multiple search words are allowed; you just need to comma-separate them.
- Profile IDs are interchangeable with usernames anywhere a profile URL is accepted.
_uandprofilecardsegments are stripped automatically, soinstagram.com/_u/natgeo/profilecard/works as a profile URL.- Story URLs (
instagram.com/stories/emiliavizcarra/) are reduced to the username before scraping. - Share URLs (
instagram.com/share/BAC6cDeb_-) are resolved to the canonical post URL via a redirect. - Location URLs accept the ID alone, without the trailing slug:
instagram.com/explore/locations/7538318/is valid. - Date filters use UTC.
- Not supported: numeric post IDs in URL form (
instagram.com/p/3369450800358839406/) forposts,reels,mentions, anddetailsmodes. Use the shortCode form. (This format works forcomments.)
What can you do with data after scraping Instagram?
Instagram Scraper is a very versatile tool that can handle hundreds of use cases. Here are a few tips on most common ways people get and interpret public Instagram data:
๐ฏ Influencer vetting and partnership research
Follower count is a weak signal to find and filter influencer partnerships. Score creators on engagement quality, audience authenticity, and posting consistency instead. Here's how to find and vet Instagram creators using Instagram Scraper:
Recipe:
-
Find creators in your niche. Run
postsorreelswith a hashtag URL likeinstagram.com/explore/tags/fitness/. You'll get a pool of recent posts with creator usernames and engagement numbers. -
Profile each candidate. Run
detailson the profile URLs (or IDs) from step 1 to pull bios, follower counts, verified status, and business category. -
Score real engagement. Run
postsorreelson the top 20โ50 profile URLs to compare engagement rates, posting cadence, and format mix. -
Audit audience sentiment. Run
commentson the top-performing post URLs from step 3 to read actual reactions and spot bot patterns.
Re-run steps 2-3 weekly to catch follower drop-offs before signing. Send results to a creator CRM, Google Sheets, or your scoring dashboard.
๐ฅ Trend tracking and UGC intelligence
Trends move fast on Instagram, and the hashtags that drove reach last quarter rarely do today. Track what's gaining traction, which creators set the pace, and what's already saturated. Here's how to discover trends and UGC using Instagram Scraper:
Recipe:
-
Monitor a target hashtag's content. Run
postsorreelswith a hashtag URL likeinstagram.com/explore/tags/cleanbeauty/to see recent content under the tag and its engagement. -
Measure hashtag size and reach. Run
detailson the same hashtag URL to get post count, posts-per-day, and frequent/average/rare usage buckets. -
Find adjacent, less-saturated tags. Run
detailson the hashtag URL (or a hashtag search query) to surface related tags grouped by reach tier.
Daily runs for fast-moving categories (fashion, beauty, fitness). Weekly runs for steadier verticals (B2B, home, finance). Send output to trend dashboards, content planning tools, or Slack for daily digests.
๐ฏ Competition or campaign monitoring
Track what your competitors post, when they post, and how their audience reacts. The same workflow applies to monitoring your own campaigns. Here's how to track competitors, influencers, or campaigns using Instagram Scraper:
Recipe:
-
Track competitor stats. Run
detailson a competitor profile URL likeinstagram.com/competitor/to capture follower growth, bio updates, and posts count. -
Compare content output. Run
postsorreelson the same profile URL to see engagement rates, top-performing content, and format mix. -
Read audience reactions. Run
commentson the top competitor post URLs from step 2 to hear what their audience actually says. -
Map their hashtag strategy. Run
detailson the hashtag URLs they use to see reach tier and related-tag clusters.
Run weekly. Send results to a competitive intelligence dashboard, a shared sheet, or your strategy doc.
๐ Brand monitoring and mentions
Instagram doesn't expose comments to search, which makes true real-time brand monitoring harder than on Twitter or Reddit. Combine three angles to get as close as possible. Here's how to work with brand mentions using Instagram Scraper:
Recipe (run all three in parallel, then deduplicate):
-
Catch caption mentions. Run
postswith a search query of your brand name (setsearchTypeto"user") to find posts where your brand appears in the caption text. -
Track branded hashtag UGC. Run
postsorreelswith a branded hashtag URL likeinstagram.com/explore/tags/yourbrand/to capture content from fans, customers, and creators who chose to tag you. -
Capture @-tag mentions. Run
mentionson your own profile URL likeinstagram.com/yourbrand/to find posts where your account is @-tagged.
Combine all three for the widest realistic net. Comments stay out of reach because Instagram doesn't expose comment text to search. Send results to a brand monitoring dashboard, your CRM, or Slack for daily alerts.
๐๏ธ Local business discovery and lead generation
Many local businesses (salons, restaurants, gyms, boutiques) are active on Instagram but missing from Google Maps, Yelp, and traditional B2B lists. Here's how to find local businesses using Instagram Scraper:
Recipe:
-
Discover places by category and city. Run
detailswith a search query likevintage shop copenhagen(setsearchTypeto"place") to get a list of tagged Instagram places matching your query. -
Get place data. Run
detailson each place URL likeinstagram.com/explore/locations/318767455/to capture coordinates, category, post count, and the linked business profile. -
Enrich with profile info. Run
detailson the linked profile URL from step 2 to pull the business's bio, follower count, contact info, and recent posts.
Use cases include market entry research, competitive mapping, hyper-local partnership prospecting, and CRM enrichment. Export to CSV or send to your CRM via API.
Want to get other data from Instagram?
You can use the other dedicated scrapers below if you want to scrape specific Instagram data:
Want Threads data too? Instagram and Threads share usernames, so the Threads Profile Scraper works the same way.
โ Frequently Asked Questions
Can I scrape multiple content types in a single run?
No. Each run produces one content type, controlled by the Content to scrape parameter. To collect both posts and comments, run the Actor twice or chain runs via webhooks ot using MCP.
Can I combine URLs and search queries?
No. URLs always take priority over search queries, and they cannot be combined in the same run.
What's the difference between Posts, Reels, and Mentions output?
All three return media items with the same schema. The difference is which items come back: Posts returns the feed of a profile/hashtag/place, Reels filters to reel content (productType: "clips"), and Mentions returns posts where the target profile is tagged.
How many results can I scrape?
It depends on the content type, input, and what Instagram exposes publicly. There's no fixed cap. Open the target URL in an incognito window to see what's available to logged-out users, and test with a small run first. Free plan users are limited to one page of comments per post (~15 comments); paid plans don't have this restriction.
How do I exclude pinned posts?
Set "skipPinnedPosts": true (works with resultsType: "posts"). Two useful combinations:
- Skip old pinned posts, keep recent ones:
"skipPinnedPosts": true+"onlyPostsNewerThan": "1 day"keeps pinned posts from the last day and skips older ones. - Scrape only pinned posts:
"skipPinnedPosts": false+"onlyPostsNewerThan": "0 minutes".
How do I scrape only recent posts?
Use "onlyPostsNewerThan" with resultsType: "posts". Accepted formats:
- Relative:
"1 day","2 months","3 years" - Date only:
"2024-09-05" - Date with time:
"2024-09-05T13:22:04" - Date with time in UTC:
"2024-09-05T13:22:04Z"(theZdenotes UTC) - With milliseconds:
"2024-09-05T13:22:04.123"
Instagram applies UTC internally, so the filter compares against UTC regardless of your local timezone.
Can I scrape the newest comments first?
Yes. Set "isNewestComments": true when resultsType: "comments". Free plans use the default order.
Can I get comment replies?
Yes, on paid plans. Set "includeNestedComments": true when resultsType: "comments". Each reply is returned as a separate result, so the total count will exceed your resultsLimit.
Can I get extra profile statistics?
Set "addProfileStatistics": true when resultsType: "details". This adds a statistics object to each profile result with fields like account type (1 = Personal, 2 = Business, 3 = Creator) and other profile-level data. Works for private profiles too.
Why is likesCount sometimes -1?
When a creator hides the like count on a reel or post, Instagram doesn't expose it. The scraper returns -1 to indicate the value isn't publicly available.
Is it legal to scrape Instagram?
Our social media scrapers only collects data that is publicly available on Instagram. It does not access private content. You should be aware that some public data may be considered personal data under regulations like the GDPR. Only scrape data if you have a legitimate reason. For guidance, see our blog on the legality of web scraping.
Can I integrate Instagram data with other services?
Yes. Scraped Instagram data can be integrated with almost any cloud service or web app. Apify supports Zapier, n8n, Slack, Make, Airbyte, Gumloop, CrewAI, IFTTT, Lindy, GitHub, Google Sheets, Google Drive, and more. You can also use webhooks to trigger actions whenever a run finishes, like sending notifications or syncing datasets.
Can I use Instagram Scraper with the Apify API?
Yes. The Apify API provides programmatic access to run Actors, fetch datasets, monitor performance, and manage tasks. For Node.js, use the apify-client NPM package. For Python, use the apify-client PyPI package. Full API docs are available in the Apify API reference.
Can I get Instagram data through an MCP server?
Yes. You can connect to an MCP server using clients like ClaudeDesktop or LibreChat, or build your own integration. For Instagram Scraper:
- Start a Server-Sent Events (SSE) session to receive a
sessionId. - Send API messages using that
sessionIdto trigger the scraper. - The message starts the Instagram Scraper with the provided input.
- The response should be: Accepted.
Learn more in the MCP setup guide.
Instagram Scraper not working?
The Apify team constantly improves Actor performance. If you find bugs or technical issues, please create an issue on the Actor's Issues tab.



