# ✅ Instagram Post Like Scraper (`datamagnet/instagram-likes`) Actor

Collect available likes from Instagram posts, reels, and videos using links, short codes, or IDs. Process one target or a batch, then receive like records grouped with each original input and preserved as returned. Use the data for audience research, competitor analysis, and engagement reporting.

- **URL**: https://apify.com/datamagnet/instagram-likes.md
- **Developed by:** [Datamagnet](https://apify.com/datamagnet) (community)
- **Categories:** Social media
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.00 / 1,000 results

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?

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 Likes Scraper – Instagram Post Like Data Collector

Instagram Likes Scraper helps businesses, researchers, marketers, and social media professionals collect the available likes from Instagram posts, reels, and videos. Enter one or multiple Instagram post links, short codes, or IDs and receive the corresponding like records for each post. The results preserve the information provided for every liking account, including usernames, profile names, account IDs, verification status, privacy status, and profile images. It is a practical Instagram data extractor for audience research, content analysis, competitor monitoring, and reporting.

### Key Features

- **Extract** available likes from Instagram posts, reels, and videos.
- **Collect** data from one Instagram target or a batch of targets in a single run.
- **Preserve** the original like information without renaming, filtering, or removing returned fields.
- **Group** every set of like records with the Instagram post link, code, or ID you supplied.
- **Analyze** usernames, full names, account IDs, verification status, privacy settings, and profile image links.
- **Export** results in convenient formats such as JSON, CSV, and Excel for reporting or further analysis.
- **Monitor** engagement audiences across selected posts and compare the people interacting with different pieces of content.

### Use Cases

#### Market Research

Marketing teams can review the available accounts that liked competitor posts, industry announcements, or trending content. Usernames, full names, verification indicators, and account privacy status help researchers understand the visible audience around different topics and identify patterns worth investigating.

#### Competitor and Content Analysis

Brand managers can collect likes from several competitor posts, reels, or videos and compare the visible audience across campaigns. Grouping the results by the original post makes it easier to connect each username and profile record to the content that attracted the engagement.

#### Influencer Discovery

Agencies and creator managers can use usernames, full names, profile image links, and verification status to build an initial list of potentially relevant accounts. The data can support manual review and prioritization when looking for visible community members, creators, or notable profiles connected to a particular niche.

#### Campaign Reporting

Social media teams can save like records for selected campaign posts and include them in internal engagement reports. Account IDs and usernames provide consistent references, while the original post identifier or URL helps keep records organized by campaign asset.

#### Audience Research

Researchers can examine the visible account characteristics associated with posts about a product, event, location, or social topic. Privacy status, verification status, usernames, and profile names can help segment the available records for qualitative review without changing the information returned for each account.

#### Lead Research

Sales and partnership teams can use the collected usernames and profile details to create a research shortlist of accounts that visibly interacted with relevant content. This is a discovery aid rather than a guarantee of buying intent, so teams should validate each prospect and follow applicable outreach rules before making contact.

### Input

| Field | Type | Required | Description | Example |
|---|---|---:|---|---|
| `code_or_id_or_url` | String | Yes | Enter one Instagram post, reel, or video short code, post ID, or full Instagram link. This is useful when you want to collect likes from a single target. | `CxYQJO8xuC6` |
| `code_or_id_or_urls` | List of strings | No | Enter one or more Instagram post, reel, or video links, short codes, or IDs. Add several values to process multiple targets in one run. | `CxYQJO8xuC6`, `Cz8K2QxL7mP`, `CyN4aWvR9tB` |

You can use a short code such as `CxYQJO8xuC6`, a numeric Instagram post ID, or a full link such as `instagram.com/p/ABC123/`. When working with several posts, reels, or videos, place each value in the multiple-target list. Make sure the links or identifiers point to the Instagram content you want to review. The original value is retained with its results so you can identify which target produced each group of likes.

### Output

The actor returns one result for each supplied Instagram target, together with the available like records associated with that target. Like information is preserved as provided, so some records may contain fields that are not present in others.

| Field | Type | Description |
|---|---|---|
| `full_name` | String | The display name shown on the Instagram account, when available. |
| `id` | String | The account’s Instagram identifier, useful for distinguishing accounts with similar usernames. |
| `is_private` | Boolean | Shows whether the account is marked private. `true` means private and `false` means not private. |
| `is_verified` | Boolean | Shows whether the account is marked as verified. |
| `latest_reel_media` | Number | A media-related account value returned by Instagram, commonly indicating the latest reel media reference or status. |
| `profile_pic_url` | String | A link to the account’s profile image, when supplied. |
| `profile_pic_id` | String | The identifier associated with the account’s profile image, when supplied. |
| `username` | String | The Instagram handle of the account that appears in the like records. |

Depending on the available information for each account, a record may include `profile_pic_id`, or it may contain only the other fields returned for that account. No field renaming or manual cleanup is applied. This helps preserve the source information for auditing, comparison, and downstream reporting. Results are grouped with the corresponding input post, reel, or video identifier so that likes from different targets do not become mixed together.

### Sample Output

```json
[
  {
    "full_name": "🥰",
    "id": "62665052519",
    "is_private": true,
    "is_verified": false,
    "latest_reel_media": 0,
    "profile_pic_url": "https://instagram.fosm4-3.fna.fbcdn.net/v/t51.2885-19/573323465_1219825463302212_7278921664109726296_n.png?...",
    "username": "riku_0636"
  }
]
```

### How It Works

1. **You provide your target.** Enter a single Instagram post, reel, or video link, short code, or ID, or add several targets to the list.
2. **The actor checks each supplied value.** Every target is handled separately so the collected results remain connected to the correct Instagram content.
3. **Available likes are collected.** The actor retrieves the like records that are available for each supplied post, reel, or video.
4. **Account details are preserved.** Information such as usernames, full names, account IDs, privacy status, verification status, and profile image links is kept as returned.
5. **Results are organized for use.** Each response is associated with its original input, making it easier to compare targets, save reports, or continue your analysis.

### Getting Started

No coding or special setup is required. Click **Try for free**, enter one Instagram post, reel, or video code, ID, or link, and add more targets if you want to run a batch. Then click **Run** and wait for the collection to finish. Your results are available as JSON, CSV, or Excel, making them easy to inspect, share, download, and use in business reports or analysis workflows.

For the clearest results, use complete Instagram links or copy the short code directly from the content URL. When processing several targets, add each one as a separate list item. After the run completes, review the original target association before comparing usernames or account characteristics across posts.

### Frequently Asked Questions

#### Do I need technical skills?

No. The actor is designed for business users, marketers, researchers, and analysts who want to collect Instagram like data without writing code. Enter your targets in the input form, start the run, and download the finished results in a familiar format.

#### How fast does it run?

Run time depends on the number of Instagram targets, the amount of available like data, and the current response time of Instagram. A single target is generally faster than a large batch. You can monitor the run in the Apify interface and retrieve the results when processing is complete.

#### What format is the output?

Results can be downloaded as JSON, CSV, or Excel. JSON is useful for preserving the complete returned structure, while CSV and Excel are convenient for sorting usernames, filtering verification or privacy values, and preparing business reports. The actor keeps the available fields rather than replacing them with a simplified summary.

#### Is this legal to use?

You are responsible for using the actor lawfully and respecting Instagram’s terms, privacy requirements, and applicable data protection regulations. Collect only information you are permitted to access and use. Do not use collected data for unwanted contact, discrimination, harassment, or any activity prohibited by law or platform rules. Always review the requirements that apply to your country, organization, and intended purpose.

#### Can I schedule it to run automatically?

You can use the scheduling features available in the Apify platform to run the actor repeatedly, if your account and workflow support scheduling. Scheduled runs can help with recurring competitor checks, campaign monitoring, or periodic audience research. Before creating a recurring workflow, confirm that your targets, collection frequency, and intended use remain compliant with applicable rules.

# Actor input Schema

## `code_or_id_or_url` (type: `string`):

Enter the code from an Instagram post, reel, or video URL, such as CxYQJO8xuC6. You can also enter the post ID or the full Instagram URL.

## Actor input object example

```json
{
  "code_or_id_or_url": "CxYQJO8xuC6"
}
```

# Actor output Schema

## `likes` (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 = {
    "code_or_id_or_url": "CxYQJO8xuC6"
};

// Run the Actor and wait for it to finish
const run = await client.actor("datamagnet/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 = { "code_or_id_or_url": "CxYQJO8xuC6" }

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

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,datamagnet/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/fMS27TUhnpX3oCbEb/builds/1A1sJiIbcHDbmGfjr/openapi.json
