Kick.com Streamers & Livestreams Scraper avatar

Kick.com Streamers & Livestreams Scraper

Pricing

from $1.00 / 1,000 results

Go to Apify Store
Kick.com Streamers & Livestreams Scraper

Kick.com Streamers & Livestreams Scraper

$1/1K ๐Ÿ”ฅ Kick.com scraper! Streamer profiles, live viewers, followers, categories & socials. No key. JSON, CSV, Excel or API in seconds. Power influencer marketing & discovery โšก

Pricing

from $1.00 / 1,000 results

Rating

0.0

(0)

Developer

ninhothedev

ninhothedev

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

22 days ago

Last modified

Share

Scrape Kick.com streamer profiles and live streams โ€” no API key, no login, no cookies. Give the Actor a list of channel slugs, browse the currently live streams, drill into a single category, or search Kick by keyword. Every run returns one clean, flat item per channel with followers, live status, viewer count, stream title, category, thumbnails and the streamer's social handles.

Proxy required. Kick's public web API is fronted by Cloudflare bot protection that blocks datacenter IP ranges โ€” including the ones Apify runs on. The Actor sends a real Chrome TLS fingerprint (curl_cffi impersonation, rotated over several Chrome builds), but that alone is not enough: set the proxyConfiguration input to Apify Proxy with the RESIDENTIAL group (it is preselected) or supply your own residential proxy. See Proxy below.


What you get

FieldDescription
slug, channel_id, user_id, username, urlChannel identity
bio, profile_pic, country, cityProfile data (bio capped at 1000 chars)
followers_countFollower count as an integer
is_verified, is_banned, vod_enabled, subscription_enabledChannel flags
is_live, stream_title, viewer_count, stream_started_at, stream_duration, stream_language, is_matureLive state (all null when the streamer is offline)
category, category_slug, parent_categoryWhat they're streaming right now
thumbnail_url, banner_url, playback_urlMedia URLs (HLS playback URL included)
instagram, twitter, youtube, tiktok, discord, facebookCreator social handles
source, scraped_atProvenance

Offline streamers keep null live fields โ€” never 0 or "". That means viewer_count = null for an offline channel is unmistakably "not streaming", not "zero viewers".


Modes

ModeWhat it doesKey input
channelsScrapes the exact slugs you give it (xqc, @adinross, https://kick.com/classybeef)slugs
livestreamsBrowses Kick's live feed sorted by viewers, highest firstmaxItems
categorySame live browse, restricted to one categorycategorySlug
searchKick's channel search for a keyword (~20 results)searchQuery

Set liveOnly = true to drop offline channels from the dataset.


Proxy โ€” please read

Kick.com is behind Cloudflare, and the decisive factor is IP reputation, not the HTTP client:

Where the request comes fromResult (measured 2026-07-28)
Residential IP, plain urllib + browser User-Agent200 OK, clean JSON
Residential IP, curl_cffi Chrome impersonation200 OK, clean JSON
Apify datacenter IP, curl_cffi Chrome impersonation403 Forbidden

So no TLS fingerprint, header set or retry strategy rescues a datacenter IP. What works is a residential exit node:

{
"mode": "livestreams",
"maxItems": 200,
"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }
}

The Actor still ships a Chrome fingerprint rotation (chrome124 โ†’ chrome131 โ†’ chrome136, one per retry) because Cloudflare's accepted fingerprint set drifts over time โ€” but treat the residential proxy as mandatory on the Apify platform. If everything is blocked anyway, the run fails loudly with the exact HTTP status and this instruction instead of producing an empty dataset.

Example input

{
"mode": "livestreams",
"maxItems": 200,
"liveOnly": true
}
{
"mode": "channels",
"slugs": ["xqc", "adinross", "classybeef"],
"maxItems": 100
}
{
"mode": "category",
"categorySlug": "just-chatting",
"maxItems": 150
}

Example output

{
"slug": "classybeef",
"channel_id": 247022,
"username": "Classybeef",
"followers_count": 222834,
"is_verified": true,
"is_live": true,
"stream_title": "TIPPING VIEWERS LIVE",
"viewer_count": 1441,
"stream_started_at": "2026-07-28T17:49:18Z",
"stream_language": "English",
"category": "Slots & Casino",
"category_slug": "slots",
"parent_category": "Gambling",
"instagram": "classybeefofficial",
"tiktok": "classybeef",
"url": "https://kick.com/classybeef",
"source": "kick",
"scraped_at": "2026-07-28T18:02:11Z"
}

Use cases

  • Influencer marketing โ€” build a Kick creator database with follower counts, categories and live-audience size, then rank creators by real reach instead of vanity numbers.
  • Streamer discovery โ€” find rising channels in a category (slots, just-chatting, grand-theft-auto-v) before they get expensive.
  • Sponsorship research โ€” check which games and categories a channel actually streams, how mature its audience is, and how consistently it goes live.
  • Live-audience analytics โ€” snapshot the live feed on a schedule and chart viewer counts per category, language and streamer over time.

Creator lead generation: Kick profiles expose Instagram, X/Twitter, YouTube, TikTok, Discord and Facebook handles. One run gives you a contactable list of creators plus their audience size โ€” a ready-made outreach pipeline for agencies, sponsors and tool vendors.


Pricing

Pay per usage. A typical run costs around $1 per 1,000 channels scraped in compute units. Budget residential proxy traffic on top โ€” the JSON responses are small (roughly 5โ€“20 KB per channel), so 1,000 channels is only a few MB of proxy traffic, but it is not free.


How it works / notes

  • Endpoints used (all public, all verified): /api/v2/channels/{slug}, /stream/livestreams/{lang}?sort=desc, the same feed with &subcategory={slug}, and /api/search?searched_word=.
  • Requests are spaced out (~0.5 s) and retried on 403 / 429 / 5xx, each retry using the next Chrome impersonation target.
  • The configured proxy is applied to every request; unsupported impersonation targets are filtered out at runtime, so an older curl_cffi build degrades gracefully instead of crashing.
  • Discovery modes collect channel slugs from the feed, then enrich each one through the channel endpoint โ€” so livestreams, category and search return exactly the same rich schema as channels.
  • Search queries shorter than 3 characters are rejected up front โ€” Kick answers those with HTTP 400.
  • The run fails loudly if Cloudflare blocks every request; the error names the HTTP status, the cause (Cloudflare bot protection on datacenter IPs) and the fix (residential proxy), so you never get a silently empty dataset.

This Actor only collects data that Kick.com serves publicly to any visitor, without logging in. Use it responsibly, respect Kick's Terms of Service, and keep personal data handling compliant with GDPR/CCPA in your jurisdiction.