Extract channel profiles, live streams, VODs, and clips from Kick.com. Batch multiple channels per run. Filter by mature content and language. Real-time viewer counts, follower stats, and stream tags. No login needed.
- Batch multiple channels: Search dozens of streamers in a single run instead of checking profiles one at a time.
- Real-time viewer and follower stats: Get live viewer counts, follower totals, and live status without gaps.
- Mature content filter: Hide NSFW-flagged streams, videos, and clips before sharing lists with sponsors.
- Language filter: Keep only streams broadcast in the language your audience cares about.
- Live streams, VODs, and clips in one tool: Cover current broadcasts, past sessions, and trending clips without switching tools.
- Choose a mode: channel details, live streams under a category, channel videos and clips, or top channel rankings.
- Enter channel names or slugs, a category, or leave the defaults to pull top channels.
- Click Start: The actor collects every matching record and writes one flat row per item.
- Download your results: Export as Excel, CSV, JSON, or HTML from the Output tab.
| Field | Type | Required | Description |
|---|---|---|---|
mode |
string | No | Extraction mode: channel details, live streams, channel videos and clips, or top channels. Defaults to channel details. |
channelNames |
array of strings | No | Streamer channel names or links, e.g. xqc, kick.com/amouranth. Used for channel details and channel videos modes. |
category |
string | No | Category slug, e.g. just-chatting, slots, fortnite. Used for live streams and top channels modes. |
videoType |
string | No | Fetch past VOD broadcasts or user clips. Used in channel videos mode. |
maxResults |
integer | No | Maximum number of items to output. Defaults to 50. |
minViewers |
integer | No | Filter out live streams below this viewer count. |
excludeMature |
boolean | No | Hide streams, videos, and clips flagged as mature or NSFW content. |
languageFilter |
string | No | Keep only results in a specific language code, such as en or es. Leave blank for all languages. |
proxyConfiguration |
object | No | Standard connection proxy settings. |
Each row in your dataset is one channel, live stream, VOD, or clip record. All fields are flat with no nested data, so the file opens cleanly in any spreadsheet program.
{
"mode": "channel_details",
"channelId": 668,
"channelName": "xqc",
"displayName": "xQc",
"verified": true,
"followersCount": 1057874,
"isLive": true,
"currentViewers": 45000,
"streamTitle": "LIVE | REACTS | CLIPS",
"category": "Just Chatting",
"categorySlug": "just-chatting",
"avatarUrl": "https://files.kick.com/images/user/676/profile.webp",
"bannerUrl": "https://files.kick.com/images/channel/668/banner.jpg",
"bio": "THE BEST AT ABSOLUTELY EVERYTHING.",
"socialTwitter": "xqc",
"socialInstagram": "xqcow1/",
"socialYoutube": "channel/xqc",
"socialDiscord": "xqcow",
"isAffiliate": true,
"scrapedAt": "2026-07-09T05:46:31.000Z"
}| Field | Type | Description |
|---|---|---|
channelId |
number | Unique channel identifier assigned by the platform. |
channelName |
string | Canonical channel slug. |
displayName |
string | Human readable creator display name. |
followersCount |
number | Total number of channel followers. |
isLive |
boolean | Live streaming indicator flag. |
currentViewers |
number | Real-time viewer count on live streams. |
streamTitle |
string | Current stream title or VOD session title. |
category |
string | Name of the current streaming category. |
videoType |
string | Format of video fetched, such as clips or videos. |
videoDuration |
number | Total duration of VODs or clips in seconds. |
videoViews |
number | Total views recorded on VODs or clips. |
videoUrl |
string | Direct web link to the video or clip player. |
$2.64 per 1,000 results. No monthly subscriptions and no minimum commits. New Apify accounts include $5 of free usage, so you can try it before you pay.
You only pay for the channel and stream records successfully added to your dataset. If a search yields no results, the run costs nothing.
Create a .env file from .env.example, add your Apify API token, and run:
npm install
npm startThe script uses the Apify API client to start the Kick.com Scraper and fetch results.
- Batch channel names: Pass a list of streamer slugs in one run instead of triggering separate runs per creator.
- Use category slugs for discovery: Pull live streams or top channels for a whole category like
just-chattingorfortniteinstead of naming channels individually. - Combine filters: Stack
excludeMatureandlanguageFiltertogether to build sponsor-safe, audience-specific lists in one pass. - Set
maxResultsintentionally: Cap output to only what you need to keep runs fast and predictable in cost.
Is Kick.com scraping legal? Yes. This tool extracts publicly accessible channel and stream information. Check regional data privacy regulations if you process social profile data downstream.
Do I need a proxy or login to run this scraper? No. Standard connection routing is handled automatically and no Kick.com account or login is required.
Can I filter out mature or NSFW content?
Yes. Set excludeMature to true to remove streams, videos, and clips that Kick has flagged as mature content.
For bug reports, missing fields, or feature requests, open an issue under the Issues tab.
