Temu Category Trend Report
Pricing
$10.00 / 1,000 results
Temu Category Trend Report
Daily Temu category intelligence: top 200 products ranked by 7-day momentum. Spot Breakout products before they peak, track price trends, and get a curated Hot Picks list — all from a single run. Covers 16 categories including Fashion, Beauty, and Home.
Pricing
$10.00 / 1,000 results
Rating
0.0
(0)
Developer
CRW
Maintained by CommunityActor stats
1
Bookmarked
3
Total users
2
Monthly active users
4 days ago
Last modified
Categories
Share
Daily trend intelligence for Temu's top-selling categories. Identify Breakout products before they peak, track price movements, and spot what's actually selling — updated every day.
What You Get
Each run delivers two outputs for a selected Temu category:
- Dataset (200 rows) — One row per product currently ranked in the top 200
- Key-Value Store:
REPORT_SUMMARY— Category-level summary, 7-day price trend, and curated Hot Picks list
Why This Actor
Temu moves fast. Products rocket from obscurity to top 10 in 48 hours, then disappear. By the time you notice a hot item manually, the margin window is already closing.
This actor gives you:
- Breakout detection — Products with rank climbing >5 positions AND sales up >200 units in 7 days
- 7-day momentum scores — Not just today's snapshot, but the trajectory
- Price trend history — Category avg price over 8 days, so you see where pricing is heading
- Hot Picks list — Pre-filtered shortlist of the highest-momentum products (up to 50)
- Market signal — One-word category health:
Hot/Warm/Neutral/Cooling
Supported Categories
| Category ID | Category Name |
|---|---|
| 36 | Home & Kitchen |
| 28 | Women's Clothing |
| 589 | Women's Curve Clothing |
| 95 | Women's Shoes |
| 1107 | Women's Lingerie & Lounge |
| 67 | Men's Clothing |
| 1536 | Men's Shoes |
| 1232 | Men's Big & Tall |
| 114 | Men's Underwear & Sleepwear |
| 178 | Sports & Outdoors |
| 352 | Jewelry Accessories |
| 25 | Beauty & Health |
| 204 | Toys & Games |
| 580 | Automotive |
| 218 | Kids Fashion |
| 1553 | Kids Shoes |
More categories added regularly.
Input
{"category_id": 1107,"region": "US"}
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
category_id | integer | Yes | — | Category ID from the table above |
region | string | No | "US" | Market region. Currently US only |
Output
Dataset — Product Rows
200 rows, one per product ranked in the category today.
{"goods_id": "601099555477841","title": "Women's Sexy Satin Lace Camisole and Panty Set...","price": 6.03,"price_str": "$6.03","original_price": 31.30,"discount_rate": 81,"sales_volume": 100000,"sales_tip_text": "100K+","rating": 4.8,"review_count": 1803,"rank": 1,"rank_percentile": 0.5,"momentum_status": "Rising","rank_7d_delta": -3,"sales_7d_delta": 0,"price_7d_delta": 0.0,"price_7d_min": 6.03,"price_7d_max": 6.03,"review_count_7d_delta": 16,"rating_7d_delta": 0.0,"appearances_7d": 6,"days_in_category": 9,"price_vs_top200_avg": 85.9,"first_seen_at": "20260429","last_seen_at": "20260507","is_on_sale": false,"is_low_stock": false,"is_new_product": false,"sale_ends_at": null,"has_video": true,"thumb_url": "https://img.kwcdn.com/product/fancy/...","goods_url": "https://www.temu.com/goods.html?goods_id=601099555477841","category_name": "Women's Lingerie & Lounge","category_id": 1107,"region": "US","collected_at": "20260507"}
Product Field Reference
| Field | Type | Description |
|---|---|---|
goods_id | string | Temu product ID |
title | string | Product title |
price | float | Current price (USD) |
price_str | string | Formatted price string, e.g. "$6.03" |
original_price | float | List price before discount (USD) |
discount_rate | integer | Discount percentage, e.g. 81 = 81% off |
sales_volume | integer | Cumulative units sold (normalized, e.g. "94K+" → 94000) |
sales_tip_text | string | Original sales label from Temu, e.g. "100K+" |
rating | float | Product rating (0–5) |
review_count | integer | Total number of reviews |
rank | integer | Today's rank in the category (1 = best) |
rank_percentile | float | Rank as top-N%, e.g. 0.5 = top 0.5% |
momentum_status | string | See Momentum Status table below |
rank_7d_delta | integer | Rank change over 7 days. Negative = climbed (good). e.g. -53 = moved up 53 spots |
sales_7d_delta | integer | Units sold increase over 7 days. May show 0 even for active products because Temu displays sales in rounded buckets (e.g. "100K+"), so the value only changes when the bucket threshold is crossed |
price_7d_delta | float | Price change over 7 days (USD). Positive = price increase |
price_7d_min | float | Lowest price in the past 7 days (USD) |
price_7d_max | float | Highest price in the past 7 days (USD) |
review_count_7d_delta | integer | New reviews added in the past 7 days |
rating_7d_delta | float | Rating change over 7 days |
appearances_7d | integer | Number of days this product appeared in the top 200 over the past 7 collection days (max 7). A value of 7 = consistently present. A value of 1–3 = unstable, may exit soon (Fading) |
days_in_category | integer | Days elapsed since first_seen_at, capped at 7. Reflects how long this product has been tracked within this category's top 200 over the 7-day window, not its age on Temu overall |
price_vs_top200_avg | float | This product's price as % of the category average. e.g. 85.9 = 14% cheaper than avg |
first_seen_at | string | Date first collected in this category (YYYYMMDD) |
last_seen_at | string | Most recent collection date (YYYYMMDD) |
collected_at | string | Date this row was collected (YYYYMMDD) |
is_on_sale | boolean | Whether a time-limited sale is active |
is_low_stock | boolean | Whether the low-stock badge is shown |
is_new_product | boolean | Whether Temu's "new product" tag is shown |
sale_ends_at | string | Sale end time in ISO 8601 UTC format (e.g. "2026-05-19T06:59:59Z"). Empty string if is_on_sale is false |
has_video | boolean | Whether the product has a video |
thumb_url | string | Thumbnail image URL |
goods_url | string | Clean product page URL (all tracking parameters removed) |
category_name | string | Human-readable category name |
category_id | integer | Category ID |
region | string | Region code, e.g. "US" |
Momentum Status
| Value | Meaning |
|---|---|
New | First seen in this category today |
Breakout | Rank climbed >5 spots AND sales up >200 units in 7 days — strongest buy signal |
Rising | Rank improving or sales growing steadily |
Stable | No significant movement in either direction |
Declining | Rank dropping or price rising |
Fading | Seen in top 200 on 3 or fewer of the last 7 days — at risk of exiting |
Priority order when multiple conditions apply: New > Breakout > Rising > Fading > Declining > Stable
Key-Value Store — REPORT_SUMMARY
Retrieve via the Apify API using the run's defaultKeyValueStoreId:
GET /v2/key-value-stores/{kvStoreId}/records/REPORT_SUMMARY
{"meta": {"category_id": 1107,"category_name": "Women's Lingerie & Lounge","region": "US","collected_at": "20260507","generated_at": "2026-05-07T01:05:16Z","data_freshness_hours": 1},"summary": {"total_products": 200,"avg_price": 7.02,"avg_discount_rate": 58.0,"avg_rating": 4.75,"new_entries_today": 7,"disappeared_today": 275,"on_sale_count": 96,"has_video_count": 149,"momentum_distribution": {"New": 7,"Breakout": 23,"Rising": 123,"Stable": 4,"Declining": 25,"Fading": 18},"market_signal": "Warm"},"price_trend_7d": [{"date": "20260429","avg_price": 5.95,"avg_discount_rate": 59.7,"total_collected": 200,"new_entries": 200,"disappeared": 0,"momentum_distribution": { "New": 200 }}],"hot_picks": [{"goods_id": "601099584094697","rank": 14,"momentum_status": "Rising","rank_7d_delta": -28,"price": 5.70}]}
REPORT_SUMMARY Field Reference
| Field | Type | Description |
|---|---|---|
meta.collected_at | string | Date the underlying data was collected (YYYYMMDD) |
meta.generated_at | string | ISO 8601 timestamp when the report file was generated |
meta.data_freshness_hours | integer | Hours elapsed since data was generated at time of this run |
summary.market_signal | string | Hot (≥75% Breakout+Rising), Warm (≥50%), Cooling (>40% Declining+Fading), Neutral |
summary.new_entries_today | integer | Number of products appearing in today's top 200 for the first time (i.e. not seen in any previous collection within the 7-day window) |
summary.disappeared_today | integer | Total number of products that were tracked at any point in the 7-day window but are absent from today's top 200. This value can exceed 200 because it counts cumulative exits across all days, not just yesterday's departures. A high value indicates aggressive product churn in this category |
summary.on_sale_count | integer | Number of products currently running a time-limited sale |
summary.has_video_count | integer | Number of products with a video |
summary.momentum_distribution | object | Count of products per momentum status |
price_trend_7d | array | 8-day daily history of category avg price, avg discount rate, and momentum distribution. Each entry also includes new_entries (products first seen that day) and disappeared (cumulative products no longer in top 200 as of that day) |
hot_picks | array | Up to 50 highest-momentum products (all Breakout + top 20 Rising by rank delta), sorted by rank. Same fields as Dataset rows |
Use Cases
E-commerce sellers & resellers
Filter momentum_status = "Breakout" to find products gaining traction before they peak. Use price_vs_top200_avg to find pricing gaps.
Amazon / Shopify merchants
Track which categories are heating up (market_signal = "Hot") to guide sourcing before demand hits your platform.
Market researchers
Use price_trend_7d to analyze category pricing cycles. Track disappeared_today as a churn indicator — values consistently above 200 mean extremely high product turnover and aggressive competition in that category.
Dropshippers
hot_picks gives you a ready-made shortlist of the highest-momentum products updated daily — no manual filtering needed.
Data Freshness
Data is collected once per day. meta.data_freshness_hours tells you exactly how old the data is at run time. Each run always returns the most recent available snapshot.
API Integration Example
const { ApifyClient } = require('apify-client');const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });const run = await client.actor('YOUR_ACTOR_ID').call({category_id: 1107,region: 'US',date: 'latest',});// Product rows — filter to Breakout items onlyconst { items } = await client.dataset(run.defaultDatasetId).listItems();const breakouts = items.filter(p => p.momentum_status === 'Breakout');// Summary, price trend, hot picksconst record = await client.keyValueStore(run.defaultKeyValueStoreId).getRecord('REPORT_SUMMARY');console.log('Market signal:', record.value.summary.market_signal);console.log('Hot picks count:', record.value.hot_picks.length);
Notes
- Data covers the US market only at this time
- Top 200 is determined by sales volume ranking within the category at time of daily collection
sales_volumevalues like"94K+"are normalized to integers (94000)goods_urlhas all tracking parameters stripped — onlygoods_idis retained- Historical snapshots are available for dates since data collection began for each category