Scraping an Instagram profile without an API means reading the profile page your browser already loaded, username, bio, follower and following counts, post count, website, category and verified flag, and writing it to a file. The Graph API cannot do this for accounts you do not own, so every profile scraper, cloud or local, reads pages instead. The difference between them is where the reading happens and whose login it uses.
The Mastros Instagram Scraper reads the page inside your own session: open a profile, choose Profile in the panel, and one row with every field, plus the bio email and an engagement rate over the last 12 posts, saves as CSV, XLSX or JSON. Open a followers list or a search result instead and every account on it gets the same row.
Why won't the API do this?
The Instagram Graph API serves Business and Creator accounts connected to a Facebook Page, after an app review by Meta. It returns insights on accounts you own, and a narrow business_discovery lookup for other business accounts by username, which returns counts and a bio and no email, no followers list and nothing for personal accounts.
Three things follow. You cannot use it without a Meta developer app and a review. It returns nothing for a personal account. And it exposes no contact email at all, so a tool promising "profile emails via the API" is describing something else. For a list of arbitrary profiles, the API is not an option, which is why "without an API" is the only version of this job that exists.
What does "no API" actually read?
A browser renders a profile page from the data Instagram sends it. A scraper that runs in your browser reads that same data, structured, before it is painted, and it inherits exactly your access: public profiles, and private ones you follow. A cloud scraper fetches the page from its own servers as a logged-out visitor, so it sees public profiles only and hits Instagram's anti-bot layer on its own IPs.
Neither reads anything Instagram did not send. The fields below are the whole set.
What fields does a profile export contain?
| Field | Source |
|---|---|
| username, full name | Header |
| bio | Bio text, as written |
| Read from the bio, de-obfuscated; blank if none | |
| website | The link in bio, resolved |
| followers, following, posts | Counts at export time |
| category | The business category, if the account set one |
| verified, private, business flags | As Instagram shows them |
| engagement rate | Over the last 12 posts, computed at no extra cost |
| profile URL | Direct link |
How do I scrape Instagram profiles without an API?
Three methods, in order of effort.
1. Copy the profile by hand
- Open
instagram.com/username. - Copy the name, bio, counts and website into a spreadsheet row.
- Repeat.
Best for: five profiles. It is accurate, free, and the reason the other two methods exist.
2. Export with the Mastros extension
- Install the Mastros Instagram extension from the Chrome Web Store and open instagram.com in Chrome. No password, no cookies.
- Open a profile and choose Profile in the Mastros panel. For many profiles at once, open a followers list, a following list or a search result and choose that surface instead; every account on it comes out with the same fields.
- Start. Each profile becomes one row with the fields above. If Instagram paces the reads, the run pauses, keeps every row, and resumes.
- Save as CSV, XLSX or JSON. The file is named by surface, account and date.
Best for: any number of profiles you can open, with the email and engagement rate filled in. Free and unlimited during the launch beta.
3. Run a cloud actor
- Create an account with Apify or a similar platform and open its Instagram profile scraper.
- Paste usernames or profile URLs.
- Run it and export the dataset as CSV, Excel or JSON.
Best for: a scheduled job with no person present, on public profiles. The rows are processed on the platform's servers, private profiles you follow are out of reach, and the bill scales with the run.
Which method should I use?
| Hand copy | Mastros extension | Cloud actor | |
|---|---|---|---|
| Handles a list | No | Yes | Yes |
| Private profiles you follow | Yes | Yes | No |
| Runs without a person | No | No | Yes |
| Where rows are processed | Your browser | Your browser | Their cloud |
| Email from the bio | You read it | Yes, de-obfuscated | Sometimes |
| Engagement rate | You compute it | Yes, last 12 posts | Sometimes |
| Price | Free | Free in beta, then by record | Usage-based |
Who this is not for
- Anyone who wants a private account they do not follow. Nothing reads it; the page is not sent.
- Anyone who needs insights on their own account (reach, impressions, demographics). That is what the Graph API exists for, and it is the right tool for that job.
- Anyone who needs a pipeline that runs unattended every night. A browser extension needs a person; use a cloud actor and accept its limits.
FAQ
How can I scrape Instagram profiles?
Open each profile in your browser and read it, or use an extension such as the Mastros Instagram Scraper that reads the loaded page and writes one row per profile, or run a cloud actor on public profiles. The Graph API will not do it for accounts you do not own.
Can I scrape an Instagram profile without logging in?
Public profiles, yes, which is what cloud scrapers do. Follower lists, private profiles you follow and anything else that needs a session require a logged-in browser. No tool should ever ask for your password; an extension reads the session you already have.
Is there a way to see a private Instagram account?
No. A private account's posts and lists are sent only to approved followers. Tools that claim to "view private profiles" show cached public data, show nothing, or are collecting your credentials.
What is the difference between a profile scraper and a follower scraper?
A profile scraper reads one account's own page: bio, counts, website. A follower scraper reads the list of accounts following it. Mastros does both; the follower export is covered in how to export Instagram followers to CSV.
Is scraping Instagram profiles legal?
Reading public pages is generally lawful in the US; Instagram's terms restrict automated collection; GDPR and CCPA govern what you do with personal data afterwards. The detail is in is it legal to scrape Instagram.
Related reading
- Instagram Scraper — the extension, and every other surface it exports.
- Best Instagram Scrapers in 2026 — cloud actors, APIs, Python and extensions, compared.
- Engagement Rate Calculator — the rate the profile export computes, for a single account.