Instagram Post Scraper
Give it an Instagram link, get the posts: owner full name, caption, likes count, shortcode, URL and 56 more fields, in a spreadsheet, in your tools, through the API or from your AI agent.
| Owner full name | Caption | Likes count | Shortcode |
|---|---|---|---|
| MrBeast | I’m a pro football player now 😎 #MatchForHope | 1126651 | DUL4jhOEWYZ |
| MrBeast | I’m giving away OVER $1 MILLION on Sunday before the Big Game! 🏈 If you want a chance to win, go watch my live stream on @whatnot before the game 👀 | 435616 | DUJwNRaEZpu |
| MrBeast | Talk about a bad day to miss class 😅 | 418853 | DUG8IN3kZYi |
| MrBeast | I got to help build Starship with @spacex, brought back extinct animals with @colossal, flew flying cars, and a TON MORE futuristic tech in my new video. It’s my favorite video I’ve filmed in a while and I really tried focusing on the story and making sure there was a lot of the boys in it so it felt more old school :) | 854528 | DT6NJTxEVsc |
| MrBeast | EPISODE 5 OF BEAST GAMES 2 IS OUT AND IT’S TIME FOR THE CONTESTANTS TO GET CUTTHROAT 😈 | 275874 | DTyICuDgUgX |
| MrBeast | If the 100 year old liked it, you will too 💀 Go find the new Lunchly Spicy Nacho and PB&J now at Target! | 147483 | DTvXeWckQJe |
| MrBeast | pls be nice | 262939 | DTq4UI7kd0m |
| MrBeast | Survivor Vs Beast Games 2: Which TV show is the best? | 180411 | DTlviIDEUQa |
| MrBeast | Beast Games x Survivor episode is NOW LIVE on prime video! As a huge Survivor fan this is one of the coolest moments of my life! Cohosting with a legend like Jeff Probst made me reflect how far Beast Games has come in just 2 years. So grateful for all of you, go watch it for free with a 30-day trial right now! | 383028 | DTfrFOfEdc1 |
| MrBeast | I swear he kinda looks like @chrishemsworth | 6555615 | DTdtE1zkceh |
Real rows this scraper collected, 10 of 30.Download the 30 rows (CSV)
61 fields per post
Every run returns them, as CSV, JSON, JSONL, Excel, or through the API.
Export Posts
included61 fields- post_id
- id
- Unique identifier for the Instagram post
3832413338916167164- shortcode
- id
- Shortcode used in the Instagram post URL (e.g. instagram.com/p/[shortcode])
DUvd6BykR38- caption
- text
- Caption text of the Instagram post
- ❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️ ❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️ ❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️
- alt
- object
- Auto-generated or custom accessibility alt text for the post image
- empty in the example
What it costs
Switch on the options you need and pick a volume.
1 credit per post with these options
Posts a month
10,000
Built to run
Most scrapers break in silence. This one doesn't, and we show it, openly.
- Incident-free runs, 90 days
- 99.83%
- Fixing rate
- 66.7%
- Median time to fix
- 25h 49min
Frequently asked questions
What people ask before running the Instagram Post Scraper.
Instagram Post
Is it legal to scrape Instagram posts?
Yes — it's entirely legal to scrape publicly accessible data! We only collect what users choose to show publicly. For more details, see our guide on the legality of web scraping.
How long does it take to scrape an Instagram post?
Super fast! The scraper processes 30+ posts per minute, so you can gather comprehensive data from multiple posts in no time.
Do I need to log in to Instagram to scrape posts?
Nope, no login required! The scraper accesses publicly available Instagram posts without needing any account credentials. Just provide the URL and you're good to go!
What input formats does the scraper accept?
Flexible and easy! You can add Instagram post URLs or profile URLs one by one, or upload a TXT or CSV file packed with inputs for maximum convenience.
Can I scrape multiple Instagram posts at once?
Absolutely! You can scrape all posts from any profile and even hundreds of profiles in a single run. Built for scale, so whether it's 10 posts or 1,000, the scraper handles it effortlessly!
How many comments does the scraper extract from a post?
The scraper captures the top 15 comments available on the first page of the post. You'll get the most relevant and visible comments along with all their metadata and user information!
Can I scrape posts from private Instagram accounts?
No, only public Instagram profiles and public posts are accessible. Private profiles, private posts, and age-restricted public posts aren't included.
Does the scraper capture tagged users and their profile data?
Yes, it does! The scraper extracts basic profile data for all tagged users in the post. Check out the dataset sample to see exactly what user information is included!
How can I export the scraped data?
Multiple export options! You can download your data as CSV, JSON, push it to Google Sheets, S3, or SFTP. Choose whatever format works best for your workflow!
Does the scraper work with both photo and video posts?
Absolutely! The scraper works seamlessly with photos, videos, and carousel posts—you'll get complete metadata for every type. If you specifically want to collect reels, check out our Instagram Reels Scraper.
Inputs and data
What do I give the Instagram Post Scraper?
URL, such as https://www.instagram.com/natgeo/. Paste thousands at once or upload a CSV; duplicate inputs are skipped. 6 settings shape the run: see them in the playground.
What data does it return?
61 data attributes per post, each with its description and an example: see the full list.
Do I get duplicates?
No. Duplicates are removed, and you only pay for unique results.
How fresh is the data?
As fresh as your run: each run collects the data from the site at the moment it runs, nothing comes from a stored database.
In what formats do I get the results?
CSV, Excel or JSON from the dashboard, through the API, or sent after every run to Google Sheets, Amazon S3, an SFTP server, a webhook or by email.
How long are my results kept?
7 days on the free plan, 28 days on paid plans. Then they are deleted. Download or deliver what you want to keep.
Speed and reliability
How fast is the Instagram Post Scraper?
Around 30 posts a minute for one squid. Your plan's slots run several squids at the same time.
How reliable is it?
99.83% of its runs had no incident over the last 90 days (3 incidents, 66.7% fixed). Every day is on this page.
What happens when the site changes?
Our team fixes the scraper: every scraper on lobstr.io is built and maintained by us. Over the last 90 days, the median time to fix this one was 25h 49min. How we measure.
Can runs repeat on their own?
Yes, on paid plans: every hour, every day, every weekday or on a custom schedule, in your time zone.
Can I cap a run?
Yes: set the most results per task and per run in the settings. The run stops there and so does the bill.
Pricing
How much does the Instagram Post Scraper cost?
1 credit per result. The playground shows the price as you pick them.
Can I use it on the free plan?
Yes. The free plan gives 100 credits every month, 100 results with this scraper, with exports capped at 30 rows.
How do the plans work?
Every month a plan gives credits, which pay for results, and slots, which set how many squids run at the same time. Starter: $20 for 10,000 credits; Pro: $100 for 100,000 credits; Team: $500 for 1,000,000 credits. Upgrades start right away and are prorated; downgrades and cancellations take effect at the end of the cycle.
Do unused credits roll over?
No. Your credits refresh every month with your plan.
What if I run out of credits?
You choose, per squid: pause and pick up where it stopped, or end the run. To keep going, upgrade or reset your billing cycle: your plan renews right away and your credits come back. Auto Billing Reset does it for you when your usage crosses a threshold you set.
Is there a yearly discount?
Yes: paying yearly takes 20% off every plan.
Can I get a refund?
A monthly plan: within 10 days of the charge, if no credit was used in that period. A yearly plan: within 30 days, in full if no credit was used, otherwise minus one month. Cancel from your billing page, then write to contact@lobstr.io. The details are in the terms of use.
Legal and privacy
Is scraping Instagram legal?
Collecting publicly available data is generally allowed, but you choose what you collect and you are responsible for how you use it. Our terms of use (article 6) ask every user to respect the rights of the sites, not to extract substantial parts of a database, not to access confidential data and to follow personal data law such as the GDPR. This is not legal advice.
How does the GDPR apply?
When results contain personal data, you are the data controller and lobstr.io, a French company, processes them on your behalf, under our personal data agreement. You need a lawful basis for what you collect, must inform the people concerned and honor their requests.
How long does lobstr.io keep the data?
Results: 7 days on the free plan, 28 days on paid plans, then they are deleted; you can delete them sooner. Your account data: see the privacy notice.
API and agents
Can I run it from my code?
Yes, through the REST API at https://api.lobstr.io/v1, with your key from the dashboard. The playground’s Code tab writes the calls for your settings, in cURL and Python. The documentation has the full reference.
Can my AI agent run it?
Yes. Add our MCP server, https://mcp.lobstr.io/mcp, to Claude, ChatGPT, Cursor or any MCP client and sign in with lobstr.io. Your agent shows the cost and asks you before a run spends credits. The playground’s Agent tab gives you a prompt.
Do API calls cost credits?
No. Credits pay for results, not for requests.
Can I know when a run ends?
Yes. Point a webhook at your server and lobstr.io calls it when a run succeeds or fails.
Are there rate limits?
Yes, per endpoint: 120 requests a minute on squids and runs, 90 on tasks, 2 a second on results. Above that the API answers 429 with a Retry-After header.