Instagram Profile Scraper avatar

Instagram Profile Scraper

Pricing

Pay per usage

Go to Apify Store
Instagram Profile Scraper

Instagram Profile Scraper

Scrape Instagram profile data and profile statistics from public Instagram pages with an Apify Actor. This actor focuses on profiles (not posts) and returns a clean dataset with the essentials (identity, stats, and account flags), plus optional previews like latest_posts, latest_igtv_videos, etc.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Instagram Scraper

Instagram Scraper

Maintained by Community

Actor stats

3

Bookmarked

7

Total users

2

Monthly active users

a day ago

Last modified

Share

Scrape Instagram profile data and profile statistics from public Instagram pages with an Apify Actor.

This actor focuses on profiles (not posts) and returns a clean dataset with the essentials (identity, stats, and account flags), plus optional previews like latest_posts, latest_igtv_videos, and discovery via related_profiles.


What this actor can do

  • Scrape Instagram profile stats: followers, following, number of posts
  • Get key profile attributes: verified/private/business flags, profile picture, bio, external links (if available)
  • Return lightweight latest posts metadata (caption + like/comment counts, plus video fields when available) for quick previews
  • Return lightweight latest IGTV videos metadata (same simplified shape as latest_posts, plus video_view_count, video_duration, video_url, dimensions, has_audio, and owner)
  • Return a list of related profiles (useful for discovery)
  • Accept both usernames and profile URLs

Want to get other details from Instagram?

This actor is optimized for profiles (not full post feeds). If you want to scrape other Instagram data, use a dedicated scraper for that specific data type.

Related link:

What data can I scrape from Instagram profiles?

Using this Instagram Profile API, you will be able to extract the following Instagram user data (when available on the public profile):

CategoryFieldsWhat you get
Identityid, username, full_nameBasic profile identifiers and display name.
Profile mediaprofile_pic_urlProfile picture URL (standard resolution).
Bio & linksbiography, bio_links[], external_urlBio text and any external links the profile exposes.
Profile statsfollowers, following, post_count, igtv_video_countHigh-level counts for quick analysis and monitoring.
Account flagsis_verified, is_private, is_business_account, is_professional_account, has_clipsAccount type and visibility indicators (useful for filtering).
Latest posts (preview)latest_posts[]Lightweight metadata for recent posts: id, shortcode, taken_at_timestamp, caption, hashtags, like_count, comment_count, plus video fields like video_url, has_audio, and dimensions when applicable.
Latest IGTV (preview)latest_igtv_videos[]Lightweight metadata for recent IGTV videos (similar to latest_posts[]), plus video_view_count, video_duration, video_url, and has_audio when available.
Related profilesrelated_profiles[]Suggestions/related accounts: id, username, full_name, is_private, is_verified, profile_pic_url.
Scrape metadatacrawled_at, ig_statusTimestamp of the scrape and a simple status indicator.

Notes:

  • Field availability depends on what Instagram returns for a given profile (especially for private accounts).
  • To keep output small and fast, arrays like latest_posts, latest_igtv_videos, and related_profiles are truncated.

Typical use cases

  • Influencer discovery and enrichment (profile stats, verification, business account)
  • Competitor monitoring (track follower growth over time)
  • Lead enrichment for sales/marketing (public business profiles)
  • Content research (quick look at latest post captions/engagement)

Input

Configure these fields in the Actor’s Input tab in the Apify Console:

instagramUsernames (required)

A list of Instagram usernames or profile URLs you want to scrape.

Examples:

  • google
  • https://www.instagram.com/google/

retries (optional)

Number of retries for temporary failures (e.g. timeouts or short-term blocking).

  • Default: 3
  • Min: 3
  • Max: 10

Quick start (Apify Console)

  1. Add one or more values to instagramUsernames (either usernames like nypost or URLs like https://www.instagram.com/google/).
  2. Adjust retries only if you hit temporary errors.
  3. Click Run → open the Dataset tab to view/export results (JSON, CSV, Excel, etc.).

This makes the actor usable as an Instagram profile scraping API, because datasets can be consumed programmatically via Apify’s API.


Example output

Example dataset item when a profile is found (abridged). Arrays are intentionally truncated to keep outputs small and fast (defaults: latest_posts12, latest_igtv_videos12, related_profiles20).

{
"id": "1067259270",
"username": "google",
"full_name": "Google",
"profile_pic_url": "https://.../610021954_..._n.jpg",
"biography": "Here to help",
"bio_links": [
{
"title": "",
"url": "https://linkin.bio/google",
"link_type": "external"
}
],
"external_url": "https://linkin.bio/google",
"category_name": "Internet company",
"followers": 15727535,
"following": 40,
"post_count": 3090,
"igtv_video_count": 107,
"is_verified": true,
"is_private": false,
"is_business_account": true,
"is_professional_account": true,
"has_clips": true,
"latest_posts": [
{
"id": "3825251725184560521",
"shortcode": "DUWBi1QE22J",
"taken_at_timestamp": 1770225643,
"is_video": true,
"display_url": "https://.../626637633_..._n.jpg",
"dimensions": {
"height": 1137,
"width": 640
},
"caption": "Exploring a newfound interest in architecture? Use Google Lens...",
"hashtags": [],
"like_count": 778,
"comment_count": 70,
"video_url": "https://.../video.mp4",
"has_audio": false,
"owner": {
"id": "1067259270",
"username": "google"
}
}
],
"latest_igtv_videos": [
{
"id": "2892596643067882496",
"shortcode": "CgkkVI8jGwA",
"taken_at_timestamp": 1659044430,
"is_video": true,
"display_url": "https://.../296019923_..._n.jpg",
"caption": "Congratulations to the finalists...",
"hashtags": [
"DoodleForGoogle"
],
"like_count": 10442,
"comment_count": 132,
"video_view_count": 66762,
"video_duration": 28.733,
"video_url": "https://.../igtv.mp4",
"has_audio": true,
"owner": {
"id": "1067259270",
"username": "google"
}
}
],
"related_profiles": [
{
"id": "208558123",
"username": "alienware",
"full_name": "ALIENWARE",
"is_private": false,
"is_verified": true,
"profile_pic_url": "https://.../456418594_..._n.jpg"
},
{
"id": "45374573700",
"username": "openai",
"full_name": "OpenAI",
"is_private": false,
"is_verified": true,
"profile_pic_url": "https://.../475911357_..._n.jpg"
}
],
"ig_status": "ok",
"crawled_at": "2026-02-05T15:54:40.146Z"
}

Example dataset item when a profile is not found:

{
"username": "11",
"ig_status": "not_found",
"message": "Profile not found",
"url": "https://www.instagram.com/11/",
"crawled_at": "2026-02-06T08:03:20.522Z"
}

Tips & troubleshooting

Don’t overload the actor. If you need to scrape large lists, split inputs into batches.


You are responsible for ensuring your use of this actor complies with:

  • Instagram’s Terms of Service
  • Applicable laws and regulations (privacy, data protection, etc.)

Only scrape data you have the right to access, and avoid collecting personal data without a lawful basis.