# YouTube Creator Finder — Influencer Discovery ✅ (`nexascout/youtube-creator-finder`) Actor

Find YouTube creators by niche, subscriber range, declared country and recent activity. Get channel profiles, public links, recent uploads and relevance scores. Export CSV, Excel or JSON. No YouTube API key required.

- **URL**: https://apify.com/nexascout/youtube-creator-finder.md
- **Developed by:** [NexaScout](https://apify.com/nexascout) (community)
- **Categories:** Social media, Lead generation, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 1 bookmarks
- **User rating**: No ratings yet

## Pricing

from $10.00 / 1,000 creator profiles

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

## YouTube Creator Finder — Influencer Discovery

Find YouTube creators for brand partnerships, influencer research and niche discovery. Search by topic, narrow the subscriber range, and compare channel profiles, recent uploads and approximate activity.

No YouTube API key or sign-in is required.

### What you get

One row per unique creator in each run:

- Channel name, handle, channel ID and source link.
- Subscriber count, total channel views and published video count when available.
- Creator description, keywords and publicly listed external links.
- Declared creator country, detected content language and language confidence.
- Recent upload titles and **approximate time since last upload**.
- Topic relevance score and the terms supporting the match.
- The search topic and observation time.

Use the results to build creator shortlists for outreach, compare creators in a niche, or refresh a research table. Export JSON, CSV or Excel from Apify, or use the dataset API with your existing workflow.

### Quick start

1. Enter one or more specific topics.
2. Choose a subscriber range or leave it unrestricted.
3. Set the maximum number of creators.
4. Run the Actor and review the Creator profiles output.

```json
{
  "searchQueries": ["hiking camping"],
  "maxCreators": 10,
  "maxCandidatesPerQuery": 30,
  "maxInactiveDays": 90,
  "activityMatch": "strict",
  "maxDetailRequests": 120,
  "maxRunSeconds": 180
}
```

### Search filters

| Setting | How it works |
| --- | --- |
| Topics | Up to 10 phrases. Specific topics usually give more useful results than a broad word. |
| Subscriber range | Set a minimum, maximum, or both. Counts can be rounded by YouTube. An unavailable count is not proof that a channel falls within your range. |
| Declared creator country | Uses the country published on the channel profile. Accepts a country name or code, such as Brazil or BR. |
| Country match | Strict excludes unknown countries; lenient keeps them and excludes confirmed mismatches. |
| Content language | A text-based estimate with confidence. Known mismatches are excluded; unknown languages remain. |
| Approximate time since last upload | Set a maximum age in days. Zero disables this filter. |
| Activity match | Strict excludes unknown activity when a maximum age is set; lenient keeps it. |
| Topic relevance | A 0–100 text-based relevance score. Set zero to disable the threshold. |
| Search localization | Localizes the search results. It does not identify the audience's location. |

For example, to look for smaller active creators with a declared country of Brazil:

```json
{
  "searchQueries": ["trilhas acampamento", "camping brasil"],
  "region": "BR",
  "creatorCountry": "BR",
  "countryMatch": "strict",
  "language": "pt",
  "minSubscribers": 1000,
  "maxSubscribers": 50000,
  "maxInactiveDays": 90,
  "activityMatch": "strict",
  "maxCreators": 25,
  "maxCandidatesPerQuery": 50,
  "maxDetailRequests": 250,
  "maxRunSeconds": 240
}
```

### Pricing

**$0.02 per run + $0.01 per creator returned** ($10 per 1,000 creator rows). Platform usage during the run is included. Standard Apify charges can apply when you access or store data after the run.

| Creators actually returned | Actor charge |
| ---: | ---: |
| 5 | $0.07 |
| 10 | $0.12 |
| 25 | $0.27 |
| 50 | $0.52 |
| 100 | $1.02 |

The start fee also applies when no creator matches. Only returned creator rows are charged as results; filtered candidates and recent videos are not charged separately. Repeating a run produces new billable observations. The current price displayed in the Pricing tab takes precedence.

### Ready-to-run examples

- Outdoor creator shortlist — up to 5 creators.
- Beauty and skincare creator research — up to 10 creators.
- Fitness and wellness influencer discovery — up to 25 creators.
- Technology and AI creator research — up to 50 creators.
- Food and cooking creator discovery — up to 100 creators.

These are output limits, not guaranteed list sizes. The examples use different topics and collection budgets so you can start small and expand.

### Getting more results

Increase the creator limit together with candidates per topic, detail requests and the collection time budget. Add related topic phrases to expand discovery. A restrictive subscriber, country or activity combination may return fewer creators or none.

A run returns at most 200 creators. Search is a bounded sample, not an exhaustive YouTube index. Multiple topics share one output limit, so an early query can fill the list. Use separate Tasks when each topic needs its own quota.

### Data quality and limitations

- **Approximate time since last upload:** YouTube relative labels are converted to estimated days. “17 hours ago” becomes 0 days; “1 month ago” becomes roughly 30 days. LastUploadAt preserves a relative label, not an exact timestamp. Results near a cutoff can be imprecise.
- Recent activity is based on the channel uploads collected by this Actor. It is not a complete audit of every Shorts, live or community publication.
- Creator country is self-declared. Audience geography is not available.
- Language and relevance are text-based estimates. Translated titles can reduce confidence.
- Public counters and profile details may be missing or rounded. Null means unavailable.
- Public external links are returned when exposed. The Actor does not unlock gated contact emails or private analytics.
- YouTube availability, filters and request budgets can reduce coverage. The run summary distinguishes partial collection from a complete bounded sample.

Independent NexaScout tool; not affiliated with YouTube.

# Changelog

This Actor's version history is a separate document: https://apify.com/nexascout/youtube-creator-finder/changelog.md

# Actor input Schema

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

Up to 10 topic phrases. Creators are discovered from YouTube topic search results for these queries.

## `minSubscribers` (type: `integer`):

Only include channels with at least this many subscribers. 0 = no minimum.

## `maxSubscribers` (type: `integer`):

Only include channels with at most this many subscribers. 0 = no maximum.

## `creatorCountry` (type: `string`):

Filter by the channel's declared country (from the About page). 'any' = no filter. Accepts a code or name ('BR' = 'Brazil'). This is the creator's country, NOT the audience's geography.

## `countryMatch` (type: `string`):

How to treat creators whose country is unknown. 'lenient' keeps unknown countries (only a known mismatch is excluded). 'strict' excludes unknown countries too, so only a confirmed match passes.

## `region` (type: `string`):

Two-letter country code for localizing YouTube search. It does not measure where viewers live.

## `language` (type: `string`):

Filter by detected content language (heuristic from titles/description). 'any' = no filter. Examples: en, pt, es, de, fr.

## `maxCreators` (type: `integer`):

Maximum unique creators returned and billed per run (1–200). The actual number can be lower because of filters, available candidates or collection budgets.

## `maxCandidatesPerQuery` (type: `integer`):

Maximum channels discovered per topic query before enrichment.

## `maxRecentVideosPerCreator` (type: `integer`):

How many recent uploads to fetch per creator for language and topic confirmation.

## `maxInactiveDays` (type: `integer`):

Filter by the approximate time since last upload, estimated from YouTube's relative publication labels. Exclude creators whose estimated age exceeds this many days. 0 = disabled. The output reports approximate lastUploadDaysAgo and an activity tier (very_active/active/dormant/inactive/unknown).

## `activityMatch` (type: `string`):

How to treat creators whose last-upload date is unknown when maxInactiveDays is set. 'lenient' keeps unknown activity (only a confirmed-too-old creator is excluded). 'strict' excludes unknown activity too, so only a confirmed-recent creator passes.

## `minRelevance` (type: `integer`):

Exclude creators whose stemmed+synonym topic relevance score is below this (0-100). 0 = disabled.

## `maxDetailRequests` (type: `integer`):

Hard cap on physical HTTP requests for enrichment, including retries and filtered creators.

## `maxRunSeconds` (type: `integer`):

Stops collection early enough to write output.

## `maxRequestRetries` (type: `integer`):

Retry temporary network errors and HTTP 403/429/5xx responses within existing time and request caps.

## `proxyConfiguration` (type: `object`):

Direct requests by default. Configure your proxy if YouTube blocks cloud traffic; proxy usage may add cost.

## Actor input object example

```json
{
  "searchQueries": [
    "hiking camping"
  ],
  "minSubscribers": 0,
  "maxSubscribers": 0,
  "creatorCountry": "any",
  "countryMatch": "lenient",
  "region": "US",
  "language": "any",
  "maxCreators": 25,
  "maxCandidatesPerQuery": 30,
  "maxRecentVideosPerCreator": 10,
  "maxInactiveDays": 0,
  "activityMatch": "lenient",
  "minRelevance": 0,
  "maxDetailRequests": 120,
  "maxRunSeconds": 180,
  "maxRequestRetries": 2,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
```

# Actor output Schema

## `creators` (type: `string`):

No description

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

// Run the Actor and wait for it to finish
const run = await client.actor("nexascout/youtube-creator-finder").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("nexascout/youtube-creator-finder").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 nexascout/youtube-creator-finder --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,nexascout/youtube-creator-finder"
        }
    }
}
```

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/KnJF8heM3sDiSIfp5/builds/N44UpkcBv7A36yPGa/openapi.json
