# Instagram Likes Scraper · No Cookies (`data-slayer/instagram-likes`) Actor

Scrape Instagram post likers with profile enrichment and verified email finding. Usernames, full names, verification status, plus optional emails, phones, websites, bios, categories, and follower counts. Basic $2.50/1K · Enriched $12/1K · Verified $20/1K. No login. JSON/CSV/Excel.

- **URL**: https://apify.com/data-slayer/instagram-likes.md
- **Developed by:** [Data Slayer](https://apify.com/data-slayer) (community)
- **Categories:** Social media, Lead generation
- **Stats:** 384 total users, 29 monthly users, 100.0% runs succeeded, 2 bookmarks
- **User rating**: 5.00 out of 5 stars

## Pricing

from $1.50 / 1,000 liker (basic)s

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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.
Actors are written with capital "A".

## 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.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Instagram Likes Scraper · No Cookies

Extract every user who liked any public Instagram post — then optionally enrich each liker's profile with business emails, phone numbers, websites, bios, and follower counts. Turn post engagement into a qualified lead list. No login required.

### 📺 Video Tutorial: How it Works

https://www.youtube.com/watch?v=uSAa5XlG4w8

***

### Three Output Modes

| Mode | What you get | Price |
| ----------------------------- | ---------------------------------------------------------------------------------- | ------------------------------ |
| **Basic** (default) | Username, full name, verified status, privacy flag, profile pic, `is_new` flag | $2.50/1,000 likers |
| **Enriched** | Everything above + email, phone, website, bio, category, location, follower counts | $12/1,000 enriched profiles |
| **Enriched + Verified Email** | Everything above + MillionVerifier SMTP email verification | $20/1,000 with verified emails |

Match pay-per-event prices in the Apify Console: `result-basic` ($0.0025), `result-enriched` ($0.012), `result-verified` ($0.02), plus `apify-actor-start` ($0.0005).

***

### Why Post Likers Are Your Best Leads

People who like a post are expressing interest in that topic right now. Unlike followers (who may have followed years ago and gone dormant), likers are **actively engaged today**. This makes them high-quality prospects for:

**Your own posts** — find out exactly who engages with your content and reach out directly with verified contact info.

**Competitor posts** — their engaged audience is your warm prospect list. Scrape likers from a competitor's product launch post and get their emails before anyone else.

**Industry thought leader posts** — people liking niche content are self-qualifying as interested in that topic. A like on a SaaS pricing post means they care about SaaS pricing.

**Influencer vetting** — before paying for a sponsored post, scrape who actually likes their content. Are the likers real business accounts with bios and websites, or empty profiles and bots?

***

### What Makes This Actor Different

Every other Instagram likes scraper on Apify returns a username, a user ID, and a profile picture. That's it. This actor goes further in two ways:

**1. Profile enrichment (Enriched mode):** Each liker gets a full profile lookup — business email, phone number, website, bio, category, follower count, following count, media count, and account type. You get a complete contact record, not just a handle.

**2. Email verification (Verified mode):** Found emails are verified through MillionVerifier's SMTP verification. You know whether the email is valid, risky, or dead before you send a single message. No bounces, no wasted outreach.

#### Competitor comparison

| Feature | Data Slayer (this actor) | Instaprism Likers | Surge Street Likes | Scrapio / API Empire |
| -------------------------- | ------------------------ | ----------------- | ------------------- | -------------------- |
| Basic liker data | ✅ | ✅ | ✅ | ✅ |
| Full profile enrichment | ✅ | ❌ | ❌ | ❌ |
| Business email extraction | ✅ | ❌ | ❌ | ❌ |
| Phone number extraction | ✅ | ❌ | ❌ | ❌ |
| Website & bio links | ✅ | ❌ | ❌ | ❌ |
| SMTP email verification | ✅ (MillionVerifier) | ❌ | ❌ | ❌ |
| No login / no cookies | ✅ | ✅ | ✅ | ✅ |
| Follower & following count | ✅ | ❌ | ❌ | ❌ |
| Business category | ✅ | ❌ | ❌ | ❌ |

***

### What You Get

#### Liker fields (every mode)

| Field | Description |
| ------------------ | ---------------------------------------------- |
| `username` | Instagram handle |
| `full_name` | Display name |
| `id` | Unique Instagram user ID |
| `is_verified` | Verification badge status (true/false) |
| `is_private` | Account privacy setting (true/false) |
| `profile_pic_url` | Direct URL to profile picture |
| `latest_reel_media` | Timestamp of most recent reel (activity signal) |

#### Enriched profile fields (Enriched & Verified modes)

| Field | Description |
| ---------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| `liker_public_email` | Business email from Instagram profile |
| `liker_contact_phone_number` | Phone number (if public) |
| `liker_external_url` | Website link |
| `liker_bio_links` | All links in bio |
| `liker_biography` | Full bio text |
| `liker_category` | Business category (e.g., "Photographer", "Restaurant") |
| `liker_is_business` | Business account flag |
| `liker_follower_count` | Their audience size |
| `liker_following_count` | How many accounts they follow |
| `liker_media_count` | Total posts on their profile |
| `liker_enrichment_status` | success / skipped\_private / not\_requested (basic) |
| `email_found` | Best email found for this liker |
| `email_source` | Source of the email (public\_email) |
| `email_verified` | **basic:** null · **enriched:** `not_requested` · **verified:** valid / invalid / risky / unknown, or `email not present` |

***

### How It Works

**Step 1.** Enter an Instagram post URL or shortcode (`postUrl` or legacy `postCode`).

**Step 2.** Choose output mode: Basic, Enriched, or Enriched + Verified Email.

**Step 3.** Click "Start." Download your results as JSON, CSV, or Excel.

That's it. No Instagram login, no cookies, no session tokens, no browser extensions. Your account is never at risk.

***

### Use Cases

**Competitor audience capture.** Find a competitor's highest-performing post. Scrape who liked it. Enrich with emails and phone numbers. Reach out with a better offer — these people already showed interest in the category.

**Content-based prospecting.** Find viral posts in your niche (use our [Instagram Reels Search](https://apify.com/data-slayer/instagram-search-reels) to discover them). Scrape likers from each post. Enrich with business contact info.

**Influencer vetting and bot detection.** Before signing an influencer deal, scrape who actually likes their posts. Real engagement: likers with bios, websites, business accounts, and real follower counts.

**Product launch audience building.** Scrape likers from posts in your product category. Enrich all of them. Deduplicate. Sort by follower count or business category.

**Event and webinar promotion.** Find posts about industry events in your space. Scrape likers. Enrich them and invite them to your own event.

***

### Sample Output (Enriched mode)

```json
{
  "username": "jmcreative.studio",
  "full_name": "Julia Martinez",
  "id": "58291047362",
  "is_verified": false,
  "is_private": false,
  "profile_pic_url": "https://scontent.cdninstagram.com/v/t51.2885-19/profile_pic.jpg",
  "latest_reel_media": 1778766950,
  "liker_enrichment_status": "success",
  "liker_public_email": "julia@jmcreative.studio",
  "liker_contact_phone_number": null,
  "liker_external_url": "https://jmcreative.studio/",
  "liker_biography": "Brand & web design for startups · 150+ clients · Available for Q3",
  "liker_category": "Graphic Designer",
  "liker_is_business": true,
  "liker_follower_count": 6200,
  "liker_following_count": 890,
  "liker_media_count": 342,
  "email_found": "julia@jmcreative.studio",
  "email_source": "public_email",
  "email_verified": "not_requested"
}
```

***

### FAQ

**Why should I pay $12/1K for enrichment when basic likers are $2.50/1K?**
Basic mode gives you a list of usernames — useful for audience research and bot detection, but not for outreach. Enriched mode gives you business emails, phone numbers, websites, bios, and follower counts. That's the difference between a list of handles and a list of leads.

**Why are some likers missing enrichment data?**
Private Instagram accounts can't be enriched. Those rows appear with `liker_enrichment_status: "skipped_private"` and null contact fields. All enrichment columns remain present in every row — your CSV columns always align cleanly for CRM import.

**What does the `email_verified` field contain?**
In Basic mode: `null` (not applicable). In Enriched mode: `not_requested` (email found but not verified). In Verified mode: one of `valid`, `invalid`, `risky`, `unknown`, or `email not present`. Verification is done via MillionVerifier's SMTP checks.

**How is this different from scraping followers?**
Followers may have followed years ago and never returned. Likers are engaged right now — they saw the post, processed it, and took action.

**Can I scrape likers from multiple posts at once?**
One post per run today — enter a single `postUrl` or `postCode`. Run the actor multiple times for multiple posts, or chain runs in Make/n8n.

**Does this require my Instagram login?**
No. Zero login, zero cookies, zero session tokens.

**What formats can I export?**
JSON, CSV, and Excel — directly from the Apify Console.

***

### 🧩 Other Instagram Actors by Data Slayer

| Actor | What it does | Link |
| -------------------------------- | ----------------------------------------- | ------------------------------------------------------------------------------ |
| Instagram Comments Extractor | Comments + commenter contact info | [Try it →](https://apify.com/data-slayer/instagram-comments-scraper-no-login-required) |
| Instagram Contact & Email Finder | Emails & phones from known usernames | [Try it →](https://apify.com/data-slayer/instagram-user-info-scraper-cookieless) |
| Instagram User Search | Search users by keyword + contact info | [Try it →](https://apify.com/data-slayer/instagram-search-users) |
| Instagram Followers Scraper | Follower lists with enrichment | [Try it →](https://apify.com/data-slayer/instagram-followers-scraper---no-login) |
| Instagram Following Scraper | See who any account follows | [Try it →](https://apify.com/data-slayer/instagram-following) |
| Instagram Hashtag Posts | Posts & Reels by hashtag | [Try it →](https://apify.com/data-slayer/instagram-hashtag-posts-scraper) |
| Instagram Reels Search | Discover trending Reels by keyword | [Try it →](https://apify.com/data-slayer/instagram-search-reels) |

***

### 💬 Feedback & Support

We actively maintain this actor weekly. Open an issue on the **Issues** tab or leave a rating. We respond within 24 hours.

# Actor input Schema

## `postCode` (type: `string`):

Instagram post shortcode or full post URL (legacy name postCode; postUrl also accepted via API).

## `mode` (type: `string`):

Pay-per-result tiers. Basic = thin liker rows. Enriched = /instagram/v1/info per public liker (no MillionVerifier). Verified = enriched + MillionVerifier SMTP verification.

## `maxResults` (type: `integer`):

Maximum likers to return. Omit to scrape all likers (legacy default). API alias: maxItems.

## Actor input object example

```json
{
  "postCode": "DVEGQskiMcy",
  "mode": "basic"
}
```

# 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 = {};

// Run the Actor and wait for it to finish
const run = await client.actor("data-slayer/instagram-likes").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 = {}

# Run the Actor and wait for it to finish
run = client.actor("data-slayer/instagram-likes").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 '{}' |
apify call data-slayer/instagram-likes --silent --output-dataset

```

## MCP server setup

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

```

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/C3cMMOOcycJJlgYiT/builds/hWNgs7zx5chftdKbx/openapi.json
