Better Fetch

Instagram Scraper

Extract public Instagram profile metadata and recent visible media cards from a username or profile URL, including bio, links, avatar, public counts, verification, privacy, captions, likes, and comments.

Socialv0.1.0~1 credit/runApify StoreSource on GitHub

Overview

Instagram Scraper is the broader public Instagram entry point for Better Fetch tools. Version 0.1 focuses on the reliable public web profile response: it accepts a username or profile URL, returns account metadata and counts, and includes recent visible media cards with captions, thumbnails, timestamps, likes, and comments when Instagram exposes them.

Last validated: Jul 3, 2026

Playground

Instagram username, with or without @. Use username or profile_url.

Public Instagram profile URL. Use username or profile_url.

Maximum recent visible media cards to return

Sign in to run this tool

~1 credit per run · runs against your account

Input

usernamestring

Instagram username, with or without @. Use username or profile_url.

profile_urlstring (uri)

Public Instagram profile URL. Use username or profile_url.

max_recent_postsintegerdefault: 6

Maximum recent visible media cards to return

Output

usernamestringrequired

Instagram username

verifiedboolean

Whether the profile is verified

biographystring

Profile biography

full_namestringrequired

Visible profile name

source_urlstringrequired

Public Instagram profile URL

media_countinteger

Visible post/media count

external_urlstring

Primary external URL

recent_postsobject[]

Recent visible media cards

follower_countinteger

Visible follower count

following_countinteger

Visible following count

private_accountboolean

Whether the profile is private

profile_pic_urlstring

Profile picture URL

Examples

openai-profile

{
  "username": "openai",
  "max_recent_posts": 3
}

Use cases

Social research

Collect public Instagram profile and recent-media context for creator research, brand monitoring, social listening, or competitive analysis.

Recent post summaries

Give an agent a bounded set of recent visible Instagram captions, post URLs, thumbnails, timestamps, likes, and comment counts for quick review.

Profile monitoring

Track account metadata, bios, links, follower counts, and visible media counts over time without using private Instagram credentials.

FAQ

Does Instagram Scraper require a login?

No. It uses public Instagram web responses visible without account-specific cookies and does not use passwords, exported sessions, or private API tokens.

Does this version scrape comments, hashtags, or every post?

No. Version 0.1 returns public profile metadata and recent visible media cards. Comments, hashtags, locations, and deep timeline pagination should be added as separate validated slices.

What happens with private profiles?

Private or unavailable profile data is not bypassed. The tool returns only what Instagram exposes in the public web profile response.

Use it anywhere

MCP (Claude, Cursor, any client)

# Add the Better Fetch MCP connector (or paste the URL into
# Claude → Settings → Connectors → Add custom connector):
claude mcp add --transport http better-fetch https://betterfetch.co/api/mcp \
  --header "Authorization: Bearer bf_your_key_here"

# Then ask for the tool by name: instagram_scraper

REST

curl -sS -X POST "https://betterfetch.co/api/tools/instagram_scraper/run" \
  -H "Authorization: Bearer bf_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{"input": {"username":"openai","max_recent_posts":3}}'

Run locally

git clone https://github.com/better-fetch/instagram-scraper && cd instagram-scraper && npm i
BETTER_FETCH_API_KEY=bf_your_key_here npx bf-tool run --input '{"username":"openai","max_recent_posts":3}'