# Instagram User Search · Find Leads by Keyword · No Login (`data-slayer/instagram-search-users`) Actor

Type any keyword and get every Instagram profile Instagram surfaces for that topic — usernames, verification status, and profile data. Enriched tier adds full profiles with emails, phones, websites, and 200+ fields. Verified tier SMTP-confirms every email. Three tiers. No login. JSON/CSV/Excel.

- **URL**: https://apify.com/data-slayer/instagram-search-users.md
- **Developed by:** [Data Slayer](https://apify.com/data-slayer) (community)
- **Categories:** Lead generation, Social media
- **Features:** Limited permissions
- **Stats:** 931 total users, 114 monthly users, 98.8% runs succeeded, 4 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.50 / 1,000 user (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?

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 User Search · Find Leads by Keyword · No Login

Type any keyword and get every Instagram profile Instagram surfaces for that topic — from a single niche term to a full location + role combo. Three output tiers let you go from basic discovery to fully enriched, SMTP-verified lead lists without leaving this actor.

### 📺 Video Tutorial: How it Works

https://www.youtube.com/watch?v=PNF-7_mIV5o

***

No login. No cookies. No Instagram account needed.

### What This Actor Does

When you search in Instagram's People tab, Instagram returns a ranked list of accounts matching your term. This actor queries that exact engine — programmatically, in bulk, for as many keywords as you need — and delivers structured results you can export immediately.

**Basic tier:** keyword → list of matching Instagram accounts with identity fields

**Enriched tier:** keyword → matching accounts → full public profiles including emails, phones, websites, bio links, follower counts, business category, and location

**Verified tier:** keyword → matching accounts → full profiles → SMTP-verified email addresses confirmed deliverable before you send

One actor. One run. No chaining separate scrapers.

### Three Output Tiers

#### Basic — $2.50 / 1,000 results

Instagram's search results for your keyword. Every account Instagram surfaces, with core identity fields. Use this for discovery, audience mapping, and feeding usernames into other workflows.

**Fields returned:**
| Field | Description |
|---|---|
| `username` | Instagram handle |
| `full_name` | Display name as shown on profile |
| `id` | Instagram's internal user ID |
| `is_verified` | Blue checkmark status |
| `is_private` | Whether the account is private |
| `profile_pic_url` | Profile picture URL |
| `latest_reel_media` | Timestamp of most recent Reel (unix) |

#### Enriched — $12 / 1,000 profiles

Everything in Basic, plus a full public profile lookup for each result. This is where the actor becomes a lead generation tool — you get the complete picture on every account including contact information they've made public.

**Additional fields returned:**
| Field | Description |
|---|---|
| `follower_count` | Total followers |
| `following_count` | Total following |
| `media_count` | Total posts |
| `biography` | Full bio text |
| `external_url` | Primary website link |
| `bio_links` | All bio links with titles (Linktree, Stan.store, etc.) |
| `public_email` | Business email if publicly listed |
| `contact_phone_number` | Business phone if publicly listed |
| `business_contact_method` | Preferred contact method (EMAIL, CALL, TEXT) |
| `category` | Business category (e.g., "Fitness Coach", "Restaurant") |
| `is_business` | Business account flag |
| `account_type` | Personal / Business / Creator |
| `location_data` | City, coordinates, address (if listed) |
| `about.date_joined` | When the account was created |
| `about.country` | Country of origin |

#### Verified — $20 / 1,000 profiles

Everything in Enriched, plus MillionVerifier SMTP verification on any public email found. The actor pings each email's receiving mail server to confirm it's deliverable — without sending a message. Results include an `email_status` field so you know exactly which addresses are safe to contact.

| email_status | Meaning |
|---|---|
| `valid` | Confirmed deliverable — safe to send |
| `risky` | Catch-all domain — likely deliverable, unconfirmed |
| `invalid` | Undeliverable — do not send |
| `unknown` | Server temporarily unreachable |

**Note on email availability:** Only Instagram accounts that have explicitly set a public contact email in their business settings will have one. In most niches, 20–50% of business and creator accounts have a public email. Personal accounts almost never do. For profiles with no public email, Verified returns the same data as Enriched — `email_status` is `null`.

***

### Input

| Field | Type | Description | Example |
|---|---|---|---|
| `query` | String | Keyword or phrase to search Instagram users | `"fitness coach"`, `"real estate agent Miami"`, `"saas founder"` |
| `mode` | String | Output tier: `basic`, `enriched`, or `verified` | `verified` |
| `maxItems` | Integer | Optional cap on number of results returned | `500` |

**Tip on keyword strategy:** Instagram's search ranks accounts by relevance to the term. Shorter, more specific terms tend to surface more relevant accounts than generic single words. Combining a role + location ("photographer London", "yoga teacher Austin") surfaces hyper-targeted local results.

***

### Sample Output — Basic Tier

```json
{
  "username": "sarahfitcoach",
  "full_name": "Sarah M. | Online Fitness Coach",
  "id": "48392847562",
  "is_verified": false,
  "is_private": false,
  "profile_pic_url": "https://scontent.cdninstagram.com/v/...",
  "latest_reel_media": 1748450234
}
```

### Sample Output — Verified Tier (all fields)

```json
{
  "username": "sarahfitcoach",
  "full_name": "Sarah M. | Online Fitness Coach",
  "id": "48392847562",
  "is_verified": false,
  "is_private": false,
  "profile_pic_url": "https://scontent.cdninstagram.com/v/...",
  "latest_reel_media": 1748450234,
  "follower_count": 34200,
  "following_count": 892,
  "media_count": 412,
  "biography": "Helping busy moms get strong without the gym. DM for coaching ↓",
  "external_url": "https://sarahfitcoach.com/coaching",
  "bio_links": [
    {
      "title": "Book a free call",
      "url": "https://cal.com/sarahfitcoach",
      "link_type": "external"
    }
  ],
  "public_email": "hello@sarahfitcoach.com",
  "email_status": "valid",
  "contact_phone_number": null,
  "business_contact_method": "EMAIL",
  "category": "Personal Coach",
  "is_business": true,
  "account_type": "Creator",
  "location_data": {
    "city_name": "Austin, Texas",
    "latitude": 30.2672,
    "longitude": -97.7431
  },
  "about": {
    "country": "United States",
    "date_joined": "March 2019"
  }
}
```

***

### Use Cases

#### Influencer Discovery by Niche

Search "skincare creator", "travel photographer", or "sustainable fashion" and get a ranked list of every relevant account Instagram surfaces — with follower counts, engagement signals, and contact info in the Enriched tier. Run multiple keyword variants in one session to cover a niche comprehensively.

#### Local Business Lead Generation

Combine a role with a city — "restaurant owner Chicago", "real estate agent Austin", "wedding photographer London" — and get hyper-targeted local prospect lists. The Enriched tier adds physical address data for accounts that have listed it, making this ideal for field sales teams and local agency pitches.

#### Recruiting and Talent Discovery

Find freelancers, subject matter experts, and creative professionals by keyword — "ux designer", "copywriter fintech", "brand strategist" — and get their public contact info and website links. The Verified tier confirms which emails are live before your recruiter sends a message.

#### Competitor Mapping

Search your brand's category and see exactly who Instagram considers the relevant players. Understand the landscape, identify accounts with disproportionate engagement for their follower count, and find gaps your brand can fill.

#### Feeding Downstream Actors

Use the Basic tier as a discovery step to generate username lists, then pipe those usernames into other actors for deeper analysis:

- → [Instagram User Posts Scraper](https://apify.com/data-slayer/instagram-posts) for content analysis
- → [Instagram Followers Scraper](https://apify.com/data-slayer/instagram-followers-scraper---no-login) for audience mapping
- → [Instagram Profile Scraper · Verified Emails](https://apify.com/data-slayer/instagram-user-info-scraper-cookieless) for deeper enrichment on a shortlist

***

### How It Compares

| Feature | Data Slayer (this actor) | patient_discovery | scraper-engine | apify/instagram-search-scraper |
|---|---|---|---|---|
| Keyword → search results | ✅ | ✅ | ✅ | ✅ |
| Full profile enrichment (in same actor) | ✅ Enriched | ❌ | Partial | ❌ |
| Public email extraction | ✅ Enriched | ❌ | ✅ (unverified) | ❌ |
| SMTP email verification | ✅ Verified | ❌ | ❌ | ❌ |
| Location data | ✅ Enriched | ❌ | ❌ | ❌ |
| Bio links (Linktree etc.) | ✅ Enriched | ❌ | ❌ | ❌ |
| No login required | ✅ | ✅ | ✅ | ✅ |
| Bulk keyword input | ✅ | ✅ | ✅ | ✅ |
| JSON/CSV/Excel export | ✅ | ✅ | ✅ | ✅ |
| Pricing — Basic | $2.50/1K | $2.50/1K | Free tier then paid | Event-based |
| Pricing — with enriched profiles | $12/1K | Not available | N/A | Not available |
| Pricing — with verified email | $20/1K | Not available | Not available | Not available |

**The fundamental difference:** Every other keyword user search actor on Apify stops at the search results layer — usernames and profile pictures. This actor continues: for each result, it pulls the complete public profile and optionally verifies the email. That's two to three API steps collapsed into one run.

***

### How to Use

**Step 1.** Enter your search keyword in the `query` field. For targeted results, combine role + location or niche + descriptor ("vegan chef London", "b2b saas founder").

**Step 2.** Select your output mode: `basic`, `enriched`, or `verified`.

**Step 3.** Set `maxItems` if you want to cap the result count (optional).

**Step 4.** Click Start. Results appear in the Dataset tab when the run completes.

**Step 5.** Download as JSON, CSV, or Excel — or connect directly to Google Sheets, HubSpot, Make, Zapier, n8n, or Clay.

***

### FAQ

**How many results does a keyword search return?**
The number of results depends on the keyword. Popular broad terms ("fitness", "marketing") surface more accounts than niche-specific ones ("kettlebell coach Portland"). Instagram caps search results naturally — this actor returns everything Instagram makes available for your term.

**Can I run multiple keywords in one batch?**
Yes. Enter multiple keywords (one per run configuration) using Apify's built-in dataset input chaining, or run the actor via API with different `query` values for each keyword. Results are separated by run.

**Does every account in the Enriched tier have an email?**
No. Only accounts that have explicitly listed a public contact email in their Instagram settings will have one. Business and creator accounts in professional niches have the highest hit rates (30–50%). Personal accounts almost never list a public email.

**What's the difference between this and the Instagram Profile Scraper?**
The [Instagram Profile Scraper](https://apify.com/data-slayer/instagram-user-info-scraper-cookieless) takes a list of specific usernames and enriches them. This actor discovers profiles first via keyword search, then enriches them. Use this actor when you don't already have a list of usernames — it handles both the discovery and the enrichment in one run.

**Can I search private profiles?**
Search results include both public and private accounts, but the Enriched tier only pulls full profile data for public accounts. Private accounts return Basic-tier fields only.

**How current is the data?**
Profile data is pulled live at run time from Instagram's API. There is no cached data — what you get reflects the profile as it exists when you run the actor.

***

### More Instagram Scrapers by Data Slayer

| Actor | What It Does |
|---|---|
| [Instagram Profile Scraper · Verified Emails](https://apify.com/data-slayer/instagram-user-info-scraper-cookieless) | Start from a username list — full profiles + SMTP-verified emails, 200+ fields, 3 tiers |
| [Instagram Post & Reel Details Scraper](https://apify.com/data-slayer/instagram-post-details) | 128-field engagement data from any post or Reel URL |
| [Instagram Comments Scraper](https://apify.com/data-slayer/instagram-comments-scraper-no-login-required) | Extract all comments — Basic, Enriched, Verified tiers |
| [Instagram Likes Scraper](https://apify.com/data-slayer/instagram-likes) | Extract users who liked any post — Basic, Enriched, Verified tiers |
| [Instagram Followers Scraper](https://apify.com/data-slayer/instagram-followers-scraper---no-login) | Extract follower lists — Basic, Enriched, Verified tiers |
| [Instagram Following Scraper](https://apify.com/data-slayer/instagram-following) | Extract the following list — Basic, Enriched, Verified tiers |
| [Instagram Reposts Scraper](https://apify.com/data-slayer/instagram-reposts) | Profile repost history — Basic, Enriched, Verified tiers |
| [Instagram Profile Reels Scraper](https://apify.com/data-slayer/instagram-profile-reels) | Every Reel from any profile — play counts, saves, reposts, audio |
| [Instagram User Posts Scraper](https://apify.com/data-slayer/instagram-posts) | All posts from any profile — engagement, captions, media |
| [Instagram Highlights Scraper](https://apify.com/data-slayer/instagram-highlights-scraper) | Saved Highlights — titles, cover images, media counts |
| [Instagram Search Reels](https://apify.com/data-slayer/instagram-search-reels) | Search Reels by keyword — discover trending content |
| [Instagram Hashtag Finder](https://apify.com/data-slayer/instagram-hashtags-scraper-no-login-required) | Find related hashtags and post counts by keyword |
| [Instagram Location Posts](https://apify.com/data-slayer/instagram-location-posts) | Scrape posts from specific Instagram locations |

### Feedback

Found a bug or have a feature request? Open an issue on the [Issues tab](https://apify.com/data-slayer/instagram-search-users/issues) or email support. We respond within 24 hours.

### Related actors

More Instagram actors from the same portfolio. Apify only auto-recommends actors in the same category, so here are the rest of ours:

| Actor |
|---|
| [Instagram Audio & Trending Sounds Scraper · No Login](https://apify.com/data-slayer/instagram-audio-scraper) |
| [Instagram Brand Mentions & UGC Monitor](https://apify.com/data-slayer/instagram-brand-monitor) |
| [Instagram Comments Scraper with Replies · No Login](https://apify.com/data-slayer/instagram-comments-scraper-no-login-required) |
| [Instagram Creator Lead Finder · Keywords & Hashtags](https://apify.com/data-slayer/instagram-creator-lead-finder) |
| [Instagram Engaged Audience Exporter](https://apify.com/data-slayer/instagram-engaged-audience-exporter) |
| [Instagram Follower Count & Growth Monitor](https://apify.com/data-slayer/instagram-follower-count-growth-monitor) |
| [Instagram Followers & Following Search](https://apify.com/data-slayer/instagram-followers-following-search) |
| [Instagram Followers Scraper & Enricher · No Login](https://apify.com/data-slayer/instagram-followers-scraper---no-login) |
| [Instagram Following Scraper & Enricher · No Login](https://apify.com/data-slayer/instagram-following) |
| [Instagram Hashtag Finder · No Login](https://apify.com/data-slayer/instagram-hashtags-scraper-no-login-required) |
| [Instagram Hashtag Posts & Reels Scraper · No Login](https://apify.com/data-slayer/instagram-hashtag-posts-reels-scraper-no-login) |
| [Instagram Hashtag Research Reports](https://apify.com/data-slayer/instagram-hashtag-research) |
| [Instagram Highlights Scraper · No Login](https://apify.com/data-slayer/instagram-highlights-scraper) |
| [Instagram Keyword Posts Scraper](https://apify.com/data-slayer/instagram-keyword-posts-scraper) |
| [Instagram Likes Scraper · No Cookies](https://apify.com/data-slayer/instagram-likes) |
| [Instagram Location Posts Scraper · No Login](https://apify.com/data-slayer/instagram-location-posts) |
| [Instagram Media Archive Downloader](https://apify.com/data-slayer/instagram-media-archive-downloader) |
| [Instagram Place Finder & Details](https://apify.com/data-slayer/instagram-place-finder) |
| [Instagram Post & Reel Details Scraper · No Login](https://apify.com/data-slayer/instagram-post-details) |
| [Instagram Profile Posts & Reels Scraper · No Login](https://apify.com/data-slayer/instagram-posts) |
| [Instagram Profile Reels Scraper · No Login](https://apify.com/data-slayer/instagram-profile-reels) |
| [Instagram Profile Scraper · Account Age & Verified Emails](https://apify.com/data-slayer/instagram-user-info-scraper-cookieless) |
| [Instagram Public Contact Finder](https://apify.com/data-slayer/instagram-email-phone-scraper) |
| [Instagram Reel Performance Tracker](https://apify.com/data-slayer/instagram-reel-performance-tracker) |
| [Instagram Reel Transcript Scraper](https://apify.com/data-slayer/instagram-reel-transcript-scraper) |
| [Instagram Reels Search & Trend Discovery · No Login](https://apify.com/data-slayer/instagram-search-reels) |
| [Instagram Reels by Audio ID · Sound & Music Tracker · No Login](https://apify.com/data-slayer/instagram-reels-by-audio) |
| [Instagram Related Creator Network](https://apify.com/data-slayer/instagram-related-creator-network) |
| [Instagram Reposts Scraper · Profile Repost History · No Login](https://apify.com/data-slayer/instagram-reposts) |
| [Instagram Similar Accounts Scraper · No Login](https://apify.com/data-slayer/instagram-related-profiles-scraper) |
| [Instagram Similar Accounts Scraper · No Login](https://apify.com/data-slayer/instagram-similar-accounts-scraper) |
| [Instagram Stories Scraper · No Login](https://apify.com/data-slayer/instagram-stories-scraper) |
| [Instagram Tagged Posts & Mentions Scraper · No Login](https://apify.com/data-slayer/instagram-tagged-posts) |
| [Instagram Trending Audio & Sounds Search · No Login](https://apify.com/data-slayer/instagram-trending-audio-search) |

# Actor input Schema

## `query` (type: `string`):

Search term or keyword to discover Instagram users (e.g. "marketing", "startup founder").

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

Pay-per-result tiers. Basic = search stubs only. Enriched = /instagram/v1/info per public user (no MillionVerifier). Verified = enriched + MillionVerifier SMTP verification.

## `maxItems` (type: `integer`):

Maximum search results to return. The actor paginates automatically until this cap or the search ends. API alias: maxResults.

## Actor input object example

```json
{
  "query": "marketing",
  "mode": "basic",
  "maxItems": 5
}
```

# Actor output Schema

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

Dataset items produced by this run (one record per scraped item).

# 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 = {
    "query": "marketing",
    "maxItems": 5
};

// Run the Actor and wait for it to finish
const run = await client.actor("data-slayer/instagram-search-users").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 = {
    "query": "marketing",
    "maxItems": 5,
}

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

```

## MCP server setup

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

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/oaSftXju2QQ76rqrl/builds/mPN6erkhwLmW1zI43/openapi.json
