Bilibili Huahuo 花火 KOL Scraper - Creator Rates & Audience
Pricing
from $7.50 / 1,000 up host rows
Bilibili Huahuo 花火 KOL Scraper - Creator Rates & Audience
Find Bilibili KOLs (UP主) on the Huahuo (花火) creator marketplace by keyword, category and follower range, with commercial quotes, median plays and CPM. Get full profiles with audience breakdown and top videos. No login or cookies needed. Export to JSON, CSV or Excel.
Pricing
from $7.50 / 1,000 up host rows
Rating
0.0
(0)
Developer
Silkline
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 hours ago
Last modified
Categories
Share
Bilibili Huahuo 花火 KOL Scraper collects data on Bilibili (哔哩哔哩 / B站) creators, known as UP hosts (UP主), from Huahuo (花火), Bilibili's official creator marketplace. Search UP hosts by keyword, content category and follower range and get their commercial quotes, median plays, CPM and publishing activity, or pull a UP host's full profile with engagement averages, top videos and audience breakdown. It is made for influencer marketing teams, agencies and brands who research Bilibili KOLs. Results come as clean, flat JSON, and you need no Bilibili account, API keys, proxies or cookies.
What is Bilibili Huahuo?
Huahuo (花火) is Bilibili's creator marketplace, where brands and agencies find UP hosts for sponsored videos. For each UP host it shows the prices they quote per cooperation type, performance figures such as median plays and interaction rate, and statistics about their followers and viewers. This Actor turns that information into structured records you can filter, compare and export. It is an independent tool and is not affiliated with Bilibili.
What data can you get?
The Actor has two modes and returns two record types:
searchmode returns onecreatorrecord per UP host, with quotes, plays, CPM and activity counts.creatormode returns onecreatorDetailrecord per UP host: a full profile with engagement averages, top videos and audience lists.
Quotes are in Chinese yuan (CNY). Rates are fractions (0.02 = 2%). Fields ending in Pct are percentages.
Fields in both record types
| Field | Description |
|---|---|
quotes | Commercial quotes in CNY, one {type, price, discountPrice} entry per cooperation type, e.g. custom video |
medianPlays | Median plays per video (profiles: last 30 days) |
averagePlays | Average plays per video |
interactionRate | Interaction rate as a fraction |
followers | Follower count |
userId | Bilibili UID (use it as input for creator mode) |
url | Bilibili space link |
nickname | UP host name |
category / subCategory | Main content category and content sub-category |
accountType | independent or agency |
agencyName | Agency (MCN) the UP host works with |
tags | Content tags |
gender | male or female |
region | Province and city |
avatar | Avatar image link |
type | Record type: creator (search) or creatorDetail (profile) |
Search-only fields (creator)
| Field | Description |
|---|---|
cpm | Cost per thousand plays (CNY) |
cpc | Cost per click (CNY) |
followersGrowth | Followers gained recently |
followersGrowthPct | Recent follower growth in percent |
videos30d, videos90d, videos180d | Videos published in 30, 90 and 180 days |
hotVideos180d | Hit videos in 180 days |
sponsoredVideos | Sponsored videos so far |
cooperationModes | Cooperation formats the UP host offers |
commerceEnabled | Whether the UP host may sell products |
isLive | Whether the UP host streams live |
Profile-only fields (creatorDetail)
| Field | Description |
|---|---|
fansGender, fansAge, fansDevice, fansRegion, fansCityTier | Share of followers by gender, age, device, region and city tier, each {label, sharePct} |
viewersGender, viewersAge, viewersDevice, viewersRegion | Share of recent viewers by gender, age, device and region, each {label, sharePct} |
fansInterestTags, viewersInterestTags | Interest tags of followers and of recent viewers, each {label, count} |
seedingCpm | CPM for seeding campaigns (CNY) |
medianInteractionRate | Median interaction rate as a fraction |
averageLikes, averageComments, averageSaves, averageDanmaku | Average likes, comments, saves and danmaku per video |
topPlayedVideo | Most played video: {videoId, url, title, plays, ...} |
topInteractionVideo | Video with the best interaction rate |
totalLikes | Total likes received |
videoCount | Videos published |
appPlayShare | Share of plays on the mobile app as a fraction |
contentCategories | Industries of past collaborations |
videoLengthShare | Share of the UP host's videos by length, {label, sharePct} |
videoCategoryShare | Share of the UP host's videos by Bilibili category, {label, sharePct} |
cooperationFormats | Cooperation formats the UP host listed on the brand card |
wechat, qq | WeChat ID and QQ number the UP host filled in for brands |
pet, maritalStatus, children, futurePlan, education, isStudying | Card details the UP host filled in for brands |
isTimelyResponder | Marked as replying to briefs promptly |
agencyId | Agency ID |
signature | Profile text |
dataDate | Date of the statistics |
How to use Bilibili Huahuo 花火 KOL Scraper
- Open the Actor on Apify and go to the Input tab.
- Choose a mode: Find UP hosts (
search) or UP host profiles (creator). - For
search, enter an optional keyword and set the category, follower range and sort. Forcreator, paste Bilibili UIDs or space.bilibili.com links. - Set Max results to cap the number of items, and with it your cost.
- Click Start and wait for the run to finish.
- Open the dataset (views "UP hosts" and "UP host profiles") and export it as JSON, CSV, Excel or another format.
Input
| Field | Type | Required | What it does | Default |
|---|---|---|---|---|
mode | string | Required | search (find UP hosts) or creator (UP host profiles) | search |
keyword | string | Optional | Search term for search mode. Leave empty to browse UP hosts with the filters only | none |
searchBy | string | Optional | content matches the keyword against what UP hosts publish; nickname matches their names | content |
category | string | Optional | Only UP hosts in this Bilibili content category (values below) | any |
minFollowers | integer | Optional | Only UP hosts with at least this many followers (minimum 0) | none |
maxFollowers | integer | Optional | Only UP hosts with at most this many followers (minimum 0) | none |
sort | string | Optional | Order of results: relevance, followers, median-plays or interaction-rate | relevance |
sortOrder | string | Optional | desc (highest first) or asc (lowest first); ignored for relevance | desc |
creators | array of strings | Needed for creator mode | Bilibili UIDs (the userId of a search result) or space.bilibili.com links, e.g. https://space.bilibili.com/647398719 | none |
maxResults | integer | Optional | Maximum number of items in total for this run (1 to 5,000). You are charged per item returned | 20 |
Values for category: any, entertainment, knowledge, film-tv, music, news, kichiku, documentary, games, lifestyle, chinese-animation, animation, sports, premium-content, tech, dance, cars, anime-series, animals, fashion, food, tv-series.
maxResults is the total across all inputs in the run; a run stops as soon as it is reached. The userId of a search row is the UID to use in creator mode. An empty input {} runs in seconds and lists UP hosts with the default settings.
Example: food UP hosts with 100,000 to 300,000 followers
{"mode": "search","keyword": "美食","category": "food","minFollowers": 100000,"maxFollowers": 300000,"sort": "followers","maxResults": 100}
Example: look up UP hosts by nickname
{"mode": "search","keyword": "科技","searchBy": "nickname","maxResults": 20}
Example: tech UP hosts with the highest interaction rate
{"mode": "search","category": "tech","sort": "interaction-rate","sortOrder": "desc","maxResults": 40}
Example: full profiles
{"mode": "creator","creators": ["647398719"]}
Output example
The values below are illustrative sample values, not a real UP host.
Search result (creator)
{"type": "creator","userId": "123456789","url": "https://space.bilibili.com/123456789","nickname": "示例美食UP主","avatar": "https://example.com/avatar.jpg","gender": "female","region": "四川 成都","category": "美食","subCategory": "美食记录","accountType": "agency","agencyName": "示例MCN","followers": 185000,"tags": ["美食", "探店"],"averagePlays": 120000,"medianPlays": 95000,"interactionRate": 0.035,"quotes": [{"type": "定制视频", "price": 12000.0, "discountPrice": 10800.0}],"followersGrowth": 3200,"followersGrowthPct": 1.76,"cpm": 113.68,"cpc": 2.4,"videos30d": 6,"videos90d": 17,"videos180d": 33,"hotVideos180d": 2,"sponsoredVideos": 14,"cooperationModes": ["定制视频"],"commerceEnabled": true,"isLive": false}
Full profile (creatorDetail)
Audience lists are shortened here; real records hold one entry per label.
{"type": "creatorDetail","userId": "123456789","url": "https://space.bilibili.com/123456789","nickname": "示例美食UP主","avatar": "https://example.com/avatar.jpg","gender": "female","region": "四川 成都","category": "美食","subCategory": "美食记录","accountType": "agency","agencyName": "示例MCN","followers": 185000,"tags": ["美食", "探店"],"averagePlays": 120000,"medianPlays": 95000,"interactionRate": 0.035,"quotes": [{"type": "定制视频", "price": 12000.0, "discountPrice": 10800.0}],"signature": "记录日常美食","totalLikes": 2400000,"videoCount": 260,"contentCategories": ["食品饮料"],"averageComments": 450,"averageSaves": 1800,"averageLikes": 5200,"averageDanmaku": 600,"appPlayShare": 0.86,"seedingCpm": 95.2,"medianInteractionRate": 0.031,"agencyId": 1001,"isTimelyResponder": true,"topPlayedVideo": {"videoId": "BV1xx411c7mD", "url": "https://www.bilibili.com/video/BV1xx411c7mD", "title": "示例视频标题", "plays": 980000},"topInteractionVideo": {"videoId": "BV1yy411c7mE", "url": "https://www.bilibili.com/video/BV1yy411c7mE", "title": "示例视频标题二", "plays": 310000},"dataDate": "2026-10-13","wechat": null,"qq": null,"cooperationFormats": ["定制视频"],"pet": null,"maritalStatus": null,"children": null,"futurePlan": null,"education": null,"isStudying": null,"videoLengthShare": [{"label": "3-5分钟", "sharePct": 45.0}],"videoCategoryShare": [{"label": "美食", "sharePct": 88.5}],"fansInterestTags": [{"label": "美食", "count": 1200}],"viewersInterestTags": [{"label": "旅行", "count": 800}],"fansGender": [{"label": "女", "sharePct": 58.2}, {"label": "男", "sharePct": 41.8}],"fansAge": [{"label": "18-24", "sharePct": 41.0}],"fansDevice": [{"label": "iPhone", "sharePct": 38.0}],"fansRegion": [{"label": "广东", "sharePct": 12.4}],"fansCityTier": [{"label": "新一线", "sharePct": 27.1}],"viewersGender": [{"label": "女", "sharePct": 55.0}, {"label": "男", "sharePct": 45.0}],"viewersAge": [{"label": "18-24", "sharePct": 39.5}],"viewersDevice": [{"label": "Android", "sharePct": 52.0}],"viewersRegion": [{"label": "浙江", "sharePct": 9.8}]}
How much does it cost?
The Actor uses pay-per-event pricing. You pay only for these events:
| Event | When it is charged | Price (USD) |
|---|---|---|
Run start (run-start) | Once per run, when the first request to the data source succeeds | $0.01 |
UP host in a search (result) | Each creator record returned | $0.01 |
Full profile (detail) | Each creatorDetail record returned | $0.04 |
Worked examples:
- 100 UP hosts from a search cost $0.01 + 100 x $0.01 = $1.01.
- 20 full profiles cost $0.01 + 20 x $0.04 = $0.81.
- A default search run (20 UP hosts) costs $0.01 + 20 x $0.01 = $0.21.
The start fee is charged once per run, when the first request to the data source succeeds, even if that request returns nothing. It is not charged when the data source fails from the start or rejects the IDs, or when your spending limit cannot cover it. You never pay for more than maxResults items, items that were not delivered are never charged, and the run stops by itself if your spending limit is reached.
On the free Apify plan, a run can make one data request: one page of search results or one creator profile. A search page holds 20 UP hosts, so a free-plan run returns at most 20 results in total. Any paid Apify plan removes the limit. On the free Apify plan each account can run this Actor up to 3 times per 24 hours and 10 times per 7 days, within a small lifetime free allowance shared across all our Actors, and all free accounts share a daily free budget. When any of these limits is reached, the run stops before fetching anything and nothing is charged.
Use cases
- Influencer sourcing: shortlist UP hosts in a category and follower range with their price per video from
quotes. - Campaign planning: compare
medianPlays,cpm,cpcandinteractionRateacross candidates before you book. - Audience matching: check
fansAge,fansRegion,fansCityTierandviewersGenderagainst your target customers. - Rate benchmarking: collect quotes for a category and follower band to see typical prices for custom videos and other formats.
- Market research: see who works with agencies (
accountType,agencyName), which cooperation formats they offer and how many sponsored videos they have done. - Tracking creators over time: schedule runs to follow
followersGrowth, publishing activity and quote changes.
Integrations and API
You can start runs through the Apify API, schedule them in Apify Console, and connect the results to webhooks and other Apify integrations. Each run writes its results to a dataset that you can read through the API or export.
Example with the Python apify-client package:
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")run = client.actor("clover_folktale/huahuo-scraper").call(run_input={"mode": "search","keyword": "美食","category": "food","minFollowers": 100000,"maxFollowers": 300000,"sort": "followers","maxResults": 100,})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item)
A common workflow is to run search first, then pass the userId values of the UP hosts you like to a second run in creator mode to get their full profiles.
Tips and limits
- A search page holds 20 UP hosts.
- Keyword search by content matches what the UP hosts publish; the result is the UP host, not the video. Use
searchBy: "nickname"to look a UP host up by name. - UP hosts without Huahuo access are skipped and not charged. If too many inputs return nothing, the run stops to protect your budget.
- The Actor retries empty pages on its own and stops cleanly instead of failing half-way.
- Quotes are in Chinese yuan (CNY); rates are fractions; fields ending in
Pctare percentages. - Often empty fields:
quotesis empty for UP hosts who set no price. In search rowsmedianPlayscan be 0 andcpm,cpcempty for new UP hosts.agencyNameis a generic label for independent UP hosts.wechat,qqand the card fields (pet,maritalStatus,children,futurePlan,education) are empty unless the UP host filled them in. - Profiles lack
followersGrowth,cpm,cpcand the activity counts, which are search-only; search rows lack the audience lists. - On the free Apify plan a run makes one data request (one search page or one profile). Any paid Apify plan removes the limit.
- Missing a field or a mode? Open an issue from the Actor page and it will be looked at.
FAQ
Do I need a Bilibili account or login?
No. You need no Bilibili account, API keys, proxies or cookies. You only need an Apify account to run the Actor.
Is it legal to scrape Huahuo?
The Actor returns only what the marketplace shows about UP hosts: UID, name, avatar, region, quotes, performance figures and audience statistics, plus the contact handles and card details the UP hosts filled in themselves for brands. Nothing is collected from private accounts or messages. You are responsible for how you use the data, including contact details, and for following the laws and platform terms that apply to you.
How fresh is the data?
The data is requested when your run starts. Profiles include dataDate, the date of the statistics, so you can see how current the figures are.
Why are some fields empty?
Some fields depend on the UP host: quotes is empty if they set no price, and wechat, qq and the card fields are empty unless they filled them in. New UP hosts may have medianPlays of 0 and no cpm or cpc. Some fields exist only in search rows or only in profiles.
How many results can I get?
Up to 5,000 items per run, set with maxResults. On the free Apify plan a run returns at most 20 results (one search page or one profile).
Can I search without a keyword?
Yes. Leave keyword empty to browse UP hosts with the category, follower range and sort filters only.
Can I schedule runs and export the results?
Yes. You can schedule runs in Apify Console or start them through the API, and export the dataset as JSON, CSV, Excel and other formats.
What currency are the prices in?
UP host quotes, cpm, cpc and seedingCpm are in Chinese yuan (CNY). The Actor's own charges are in USD.
More tools from the same developer
- Bilibili B站 Scraper - Videos, Comments, Subtitles & User IDs
- Xiaohongshu Pugongying 蒲公英 Scraper - KOL Search
- Douyin Xingtu 巨量星图 Scraper - KOL Search & Rankings
- Xiaohongshu 小红书 RedNote Scraper - Notes, Comments & User IP
- Douyin 抖音 Scraper - Videos, Comments, User IDs & IP Location
- Weibo 微博 Scraper - Posts, Comments, User IDs & IP Location