# 🚀 Instagram Scraper · 5,000 Free Posts/Month (`omkar-cloud/instagram-scraper`) Actor

Instagram Scraper gets you Instagram data ⚡ fast, 🎯 100% accurate and 🔍 ridiculously detailed — posts & reels from any user, hashtag, keyword, place or link. 💰 $1 per 1,000 posts, no start fee. Scrape your first 5,000 posts free every month 🚀

- **URL**: https://apify.com/omkar-cloud/instagram-scraper.md
- **Developed by:** [Omkar Cloud](https://apify.com/omkar-cloud) (community)
- **Categories:** Social media, Lead generation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.00 / 1,000 posts

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Instagram Scraper

Instagram Scraper by Omkar Cloud gets you 🎯 accurate, 🔍 detailed Instagram data.

Instagram hides its data behind a login wall to stop you from getting it. Instagram Scraper beats it — no account, no login, no cookies — and reads Instagram live on every run, so you get posts and reels from any user, hashtag, keyword, place or link, and can successfully complete your project.

**$1 per 1,000 posts.** And with Apify's free plan you get $5 of credit every month, so your first **~5,000 posts each month are free**.

This is an excellent Actor made by Omkar Cloud, which is Rated Excellent — [4.7 based on 30 reviews on Trustpilot](https://www.trustpilot.com/review/omkar.cloud).

👉 [**Try Instagram Scraper free**](https://apify.com/omkar-cloud/instagram-scraper) — your first ~5,000 posts are Free.

### What can I get

- 📸 **Posts & reels of any public account** — the profile grid or the Reels tab, newest first
- 📊 **Every stat that matters** — likes, comments and play counts on every reel
- 🎥 **Direct media links** — HD images, every carousel slide and MP4 video links with duration
- 🎵 **Audio, tags & places** — the song or original sound, tagged accounts, coauthors and location
- 🔥 **Hashtags, keywords & locations** — the top reels for any hashtag or keyword, top or recent posts at any place

### Why Instagram Scraper

Most other Instagram scrapers fail you in one of four ways:

- 🧩 **Low-detail data** — a few fields per row, never the full picture
- 🗄️ **Inaccurate, cached, stale data** — yesterday's numbers are useless
- 💸 **Pay more to get the same data** — $2.70 per 1,000 posts elsewhere
- 🪦 **Works today, breaks next month** — nobody maintains it

Instagram Scraper reads Instagram live, is priced honestly, and actively maintained.

### Example: A Nike Reel

```json
{
  "source": "nike",
  "source_type": "user",
  "id": "3991849403537918302",
  "code": "Ddl5eH-u4le",
  "link": "https://www.instagram.com/reel/Ddl5eH-u4le/",
  "type": "video",
  "product_type": "reel",
  "caption": "*Just a normal day for @caitlinclark22.\n\nWake up. Eat cereal. Lace up the Caitlin 1. Sell out arenas. Repeat.",
  "published_at": "2026-09-22T14:00:04Z",
  "video": {
    "link": "https://instagram.fdel3-1.fna.fbcdn.net/o1/v/t2/f2/m86/AQNTYMwiQ36mUhG…",
    "width": 720,
    "height": 1280,
    "duration_seconds": 30.03
  },
  "stats": { "like_count": 51112, "comment_count": 732, "play_count": 1615696 },
  "audio": { "id": "39281228001468229", "type": "original_sound", "title": "Original audio", "artist": "nike" },
  "tagged_users": [
    {
      "user": { "username": "nikebasketball", "full_name": "Nike Basketball", "is_verified": true }
    }
  ],
  "owner": { "id": "13460080", "username": "nike", "full_name": "Nike", "is_verified": true }
}
```

*Trimmed for readability.* Every row also carries `image`, `width`, `height`, `accessibility_caption`, `carousel` (every slide), `coauthors`, `sponsors`, `location` and the rest of `stats`.

### Get Started with 5,000 Free Posts

1. [Hit **Try for Free Button**](https://apify.com/omkar-cloud/instagram-scraper) — the input is pre-filled with Taylor Swift and National Geographic.
2. Enjoy your data 😎.

### Pricing

High value, Low price.

| What | Price | What you get |
|---|---|---|
| **Posts** | **$1 per 1,000** | A post or reel — caption, likes, comments, play count, media links, audio, tags and location |

No start fee, one flat price on every plan — you pay only for the rows you get.

💡 Apify's free plan includes $5 of credit every month — about **5,000 free posts, every month**.

👉 [**Scrape your first 5,000 posts free**](https://apify.com/omkar-cloud/instagram-scraper)

### Run It from Code

Grab your API token from [Integrations Settings here](https://console.apify.com/settings/integrations) and replace `<YOUR_API_TOKEN>` below.

**Python** (`pip install apify-client`)

```python
from apify_client import ApifyClient

client = ApifyClient("<YOUR_API_TOKEN>")
run = client.actor("omkar-cloud/instagram-scraper").call(run_input={
    "usernames": ["taylorswift"],
    "contentType": "reels",
    "maxPostsPerSource": 200,
})
for row in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(row["stats"]["play_count"], row["link"])
```

**Node.js** (`npm install apify-client`)

```javascript
import { ApifyClient } from 'apify-client';

const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });
const run = await client.actor('omkar-cloud/instagram-scraper').call({
    hashtags: ['newyork'],
    searchQueries: ['silicon valley'],
    maxPostsPerSource: 100,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);
```

### FAQ

#### What can I put in the input?

Any mix of **Usernames** (`taylorswift`, `@natgeo`, a user ID or a profile link), **Post Links** (any post, reel or share link, or a shortcode), **Hashtags** (`newyork`), **Search Keywords** (`silicon valley`) and **Locations** (`212988663` or a location link). Pick **Posts** or **Reels** for usernames and **Top** or **Recent** for locations.

#### How many posts can I get per source?

Up to **Max Posts per Source** (1,000 max) for usernames, hashtags and keywords — the Actor pages through them 12 at a time. A location returns one page of its top or recent posts (about 12-30), which is all Instagram shows logged-out visitors.

#### Do I get play counts?

Yes, for reels from usernames, hashtags and keywords. Instagram does not show a play count on a single post page, so rows from **Post Links** carry likes and comments but `play_count: null`.

#### What does it cost?

$0.001 per post — $1 per 1,000 — flat on every plan, with no start fee. Apify's free plan gives you $5 of credit every month, which is about 5,000 posts free every month.

#### Is it legal to scrape Instagram?

The Actor collects only the public data Instagram shows any logged-out visitor — no login, no private accounts. Please review Instagram's terms of use and make sure your use complies with the law of your jurisdiction, including data-protection law.

#### I need profiles or comments, not posts.

Use [Instagram Profile Scraper](https://apify.com/omkar-cloud/instagram-profile-scraper) for bio, followers and post count ($1 per 1,000 profiles), or [Instagram Comments Scraper](https://apify.com/omkar-cloud/instagram-comments-scraper) for comments ($0.50 per 1,000 comments).

### 💬 Have Questions? We Have Answers.

You're a business owner — we know how hard completing a project can be. So we offer full support: just message us and we'll reply ✅ with a solution within 1 working day.

[![Message Us on WhatsApp](https://raw.githubusercontent.com/omkarcloud/assets/master/images/whatsapp-us.png)](https://api.whatsapp.com/send?phone=918178804274\&text=I%20need%20help%20with%20using%20the%20Instagram%20Scraper%20Actor.)

[![Ask Us on Email](https://raw.githubusercontent.com/omkarcloud/assets/master/images/ask-on-email.png)](mailto:happy.to.help@omkar.cloud?subject=Help%20with%20Instagram%20Scraper%20Actor\&body=I%20need%20help%20with%20using%20the%20Instagram%20Scraper%20Actor.)

You are important to us — just message us and we will solve your problem ✅ within 1 working day. 🩷 Pinky Promise 🤙!

### Popular Actors by Omkar Cloud

- [**Instagram Profile Scraper**](https://apify.com/omkar-cloud/instagram-profile-scraper) — bio, links, followers, post count & highlights, $1 per 1,000 profiles
- [**Instagram Comments Scraper**](https://apify.com/omkar-cloud/instagram-comments-scraper) — the comments of any post or reel, $0.50 per 1,000 comments
- [**Threads Scraper**](https://apify.com/omkar-cloud/threads-scraper) — Threads posts, replies, reposts and profiles
- [**Reddit Scraper**](https://apify.com/omkar-cloud/reddit-scraper) — posts from any subreddit, search, user or link, with top comments
- [**IMDb Scraper**](https://apify.com/omkar-cloud/imdb-scraper) — IMDb titles, charts, cast, ratings & box office
- [**Website Email Contact Scraper**](https://apify.com/omkar-cloud/website-email-contact-scraper) — emails, phones & socials from any website

# Actor input Schema

## `usernames` (type: `array`):

Usernames (`taylorswift`, `@natgeo`), numeric user IDs or any instagram.com profile link — scrapes their newest posts or reels.

## `contentType` (type: `string`):

For usernames: the profile grid (posts, carousels and reels shared to it) or the Reels tab.

## `postUrls` (type: `array`):

Any post, reel or share link, a shortcode (`DdcI4o0Prsz`) or a numeric media ID — one full-detail row each.

## `hashtags` (type: `array`):

Hashtags with or without `#` (`newyork`) or any instagram.com/explore/tags/ link — scrapes the top reels.

## `searchQueries` (type: `array`):

Keywords (`silicon valley`) — scrapes the top reels Instagram shows for them.

## `locations` (type: `array`):

Location IDs (`212988663` is New York) or any instagram.com/explore/locations/ link — scrapes posts tagged there.

## `locationTab` (type: `string`):

For locations: the top posts or the most recent ones.

## `maxPostsPerSource` (type: `integer`):

Cap on posts per username, hashtag, keyword or location. Keeps your cost predictable.

## Actor input object example

```json
{
  "usernames": [
    "taylorswift",
    "natgeo"
  ],
  "contentType": "posts",
  "postUrls": [
    "https://www.instagram.com/reel/DdcI4o0Prsz/"
  ],
  "locationTab": "ranked",
  "maxPostsPerSource": 50
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "usernames": [
        "taylorswift",
        "natgeo"
    ],
    "postUrls": [
        "https://www.instagram.com/reel/DdcI4o0Prsz/"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("omkar-cloud/instagram-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "usernames": [
        "taylorswift",
        "natgeo",
    ],
    "postUrls": ["https://www.instagram.com/reel/DdcI4o0Prsz/"],
}

# Run the Actor and wait for it to finish
run = client.actor("omkar-cloud/instagram-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "usernames": [
    "taylorswift",
    "natgeo"
  ],
  "postUrls": [
    "https://www.instagram.com/reel/DdcI4o0Prsz/"
  ]
}' |
apify call omkar-cloud/instagram-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,omkar-cloud/instagram-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/hFeL5X2TzcUQpBgzH/builds/EUeeppJlTdA1km6Px/openapi.json
