Ktown4u Scraper — K-Pop Albums, Goods & Bestsellers (USD)
Pricing
from $2.50 / 1,000 results
Ktown4u Scraper — K-Pop Albums, Goods & Bestsellers (USD)
Scrape ktown4u, the global K-pop album & merch store serving 241 countries. Best-seller rankings, keyword search and category listings as clean JSON: English names, artist/group, USD prices, discounts, stock and images. For K-pop research, price monitoring and AI agents.
Pricing
from $2.50 / 1,000 results
Rating
0.0
(0)
Developer
Seok June Park
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 hours ago
Last modified
Categories
Share
Ktown4u K-Pop Album & Goods Scraper 🎤
Scrape best-seller rankings, keyword search results, and category listings from ktown4u — the de-facto global K-pop album & merchandise store (self-reported 1.8M+ customers across 241 countries). Get clean, structured product data (name, artist/group, USD price, discount, stock status, image, product URL) in JSON, CSV, Excel, or via API.
Built for K-pop sellers, dropshippers, and market researchers who need to track what's actually selling on the world's biggest K-pop storefront — priced in USD and named in English, ready to use.
Try it free. Apify's free plan includes $5 of monthly platform credit — roughly 2,000 results from this actor, no credit card required. Set your input, click Start, and export JSON/CSV/Excel.
🚀 What it does
Give it a mode and a list of queries and it returns a structured product feed:
| Mode | What you get | Example input |
|---|---|---|
bestsellers | The storefront best-seller ranking (top ~20, with rank) | { "mode": "bestsellers" } |
search | Products matching each keyword | { "mode": "search", "queries": ["SEVENTEEN", "aespa"] } |
category | Products in a store category (by number, or a friendly name) | { "mode": "category", "queries": ["k-pop"] } |
Data comes straight from ktown4u's public Next.js page data (the same JSON the website's own front-end hydrates from) — so it's fast and reliable, no brittle HTML scraping and no login.
Friendly category names you can pass in category mode: k-pop (1723449),
k-contents (1723490), k-style (1723524). Any other category number works too — grab
it from a ktown4u.com/goodsList?grp_no=… URL.
📥 Input
| Field | Type | Default | Description |
|---|---|---|---|
mode | string | bestsellers | bestsellers, search, or category. |
queries | string[] | [] | Keywords (search) or category numbers/names (category/bestsellers). Empty in bestsellers = the overall best-seller list. |
maxItems | integer | 200 | Max total products across all queries. |
proxyConfiguration | object | Apify proxy | Optional. The storefront serves its public product JSON directly; a proxy just adds IP rotation for large runs. |
Input example — search several artists at once:
{"mode": "search","queries": ["SEVENTEEN", "BTS", "aespa"],"maxItems": 200}
📤 Output
Each product is one dataset record in this shape (real sample from a live run):
{"source": "ktown4u","product_id": "166051","name": "Stray Kids - 10th Mini Album [THIS & THAT] (TRUCK Ver.) (Limited Edition)","artist": "Stray Kids","category": "bestsellers","price_usd": 31.14,"sale_price_usd": 25.24,"currency": "USD","in_stock": true,"rank": 6,"url": "https://www.ktown4u.com/iteminfo?goods_no=166051","image_url": "https://media.ktown4u.com/products/resize/thumbnail/2026/07/08/MqKJ2Q.jpg","scraped_at": "2026-07-09T13:35:03.606+09:00"}
Field notes
price_usd/sale_price_usd— the storefront's USD display prices. When a product is not discounted,sale_price_usdisnull.artist— the artist/group name (a product attribute, e.g. "Stray Kids", "aespa").category— the product context:bestsellers,search/<keyword>, orcategory/<number>. (The raw product kind, e.g. "Albums", "Photobooks", "Plush Toys", is used as a fallback.)rank— 1-based position, populated inbestsellersmode (nullin search/category).in_stock— whether the item is currently on sale/available.- A full 25-record sample lives in samples/sample-output.json.
⚠️ How many results per query
ktown4u's storefront returns one page (~20 products) of results per query. The actor is
built around this: pass many queries in one run (a list of artists, keywords, or category
numbers) to collect a large, targeted catalog. bestsellers returns the top ~20 ranked
products; search/category return the first ~20 matches for each entry. Deeper pagination
past the first page is not offered (the storefront loads it via an internal client-side
call we deliberately do not replicate) — so this actor is priced and documented on the first
page only, which is exactly the high-signal "what's ranking / what matches" slice most buyers
want.
💡 Use cases
- Price monitoring — track USD prices and discounts on hero albums/goods over time.
- K-pop market research — see what's topping the best-seller ranking and what's launching by artist.
- Dropshipping / sourcing — pull high-selling products with images and URLs ready to import into Shopify/Amazon listings.
- AI agents & LLM pipelines — feed a clean JSON product catalog into RAG or a shopping assistant.
- Fandom & release tracking — monitor new album/merch drops per group.
🌐 Data source & proxy
This actor targets the global ktown4u storefront (www.ktown4u.com) — chosen because it
serves English product names and USD prices, exactly what global K-pop sellers need. Data
is read from the storefront's public Next.js page-data endpoints.
Proxy is optional. In our testing the storefront serves its public product JSON without a proxy. For large runs you can enable an Apify proxy for IP rotation; the actor falls back to a direct connection automatically if no proxy is configured or the tunnel fails. If the site's edge ever returns
HTTP 403/429, enable a proxy and retry.
⚖️ Rate & legality note
- Only public, non-personal catalog data is collected — product listings anyone can see
without logging in. No customer, reviewer, or seller personal data (no nicknames,
profiles, or IDs) is ever scraped.
artistis a product attribute, not personal data. - Requests are sequential with a ≥500 ms delay between queries to stay light on the site.
- You are responsible for complying with ktown4u's Terms of Service and applicable law in your jurisdiction. Use the data for research, monitoring, and analytics — not to replicate the storefront.
❓ FAQ
Is it legal to scrape this data? This actor collects only public, non-personal catalog data — the same product listings any visitor sees on ktown4u without logging in. No personal data is collected. You are responsible for how you use the data; see the rate & legality note above.
What does it cost in practice? $2.50 per 1,000 results (launch pricing) + a few cents of platform usage. Example: a 500-result daily pull costs about $1.25/day. Apify's free $5 monthly credit covers ~2,000 results.
Do I need to configure proxies? No — the default settings work out of the box; the storefront serves its public product JSON directly. For large runs you can optionally enable an Apify proxy for IP rotation, and if the site's edge ever returns HTTP 403/429, enable a proxy and retry.
How fresh is the data? Every run scrapes the live site at run time. Schedule the actor for recurring snapshots (e.g. daily best-seller tracking).
What is NOT included? Only the first page (~20 products) per query — deeper pagination is deliberately not offered, so pass many queries to build a large catalog. No customer, reviewer, or seller personal data is ever scraped.
🇰🇷 More Korean data actors
This actor is part of a suite of Korean-platform scrapers by the same maintainer:
- pocamarket-scraper — K-pop photocard marketplace listings and prices.
- bunjang-scraper — Korea's top secondhand marketplace search results.
Browse all: apify.com/kdatafactory
🏃 Run it
On Apify: set your input and click Start. Locally:
npm install# put your input in storage/key_value_stores/default/INPUT.jsonnpm start
Results land in the default dataset (Apify) or ./storage/datasets/default (local).
If this actor saves you time, a rating on the Store page helps a solo maintainer a lot. Found an issue? Open it in the Issues tab — I respond fast.