# Why does Xiaohongshu search stop after about 200 notes per keyword, and how do I get more?

> Why Xiaohongshu (RedNote) keyword search runs dry after a couple of hundred notes in every tool, and how splitting keywords and sort orders widens coverage.

Canonical page: https://okdata.online/answers/xiaohongshu-search-result-limit/

**Short answer: **The ceiling is on Xiaohongshu's side: its search only serves a limited number of pages per query, so every scraper and API hits it, okdata included. To cover more, split the topic into narrower keywords and run each with more than one sort order, deduplicating by note ID; at $0.02 a page, 20 keyword and sort combinations of 5 pages each cost $2.00.

You search "sunscreen" expecting thousands of notes, and the tool stops at roughly 200 to 220. Switching scrapers does not help; people report the same number with every open-source client. That is because Xiaohongshu itself stops handing out pages for a query after a certain depth. No API can make it return results it does not serve, and we will not pretend otherwise: when Xiaohongshu stops, `page.has_more` turns false.

What you can change is how many different queries you ask.

## Widen the net

With [Xiaohongshu note search](/apis/xiaohongshu/notes/search/):

- **Narrower keywords.** "sunscreen" becomes "sunscreen oily skin", "sunscreen for kids", "sunscreen 50ml review", brand names, ingredients. Each is a fresh query with its own result depth.
- **Several sort orders.** `general`, `latest` and `popular` return overlapping but different sets.
- **Note type.** `type=video` and `type=image` split the pool again.
- **Deduplicate by `id`.** Overlap is normal; count unique notes, not rows.
- **Repeat over time.** With `sort=latest`, running daily collects new notes as they appear, so a month of daily runs builds a far larger set than one big crawl.

## Budget it

| Plan | Calls | Cost |
|---|---|---|
| 1 keyword, pages until it stops (about 10) | 10 | $0.20 |
| 10 keywords × 2 sorts × 5 pages | 100 | $2.00 |
| 10 keywords, `latest`, 1 page daily for 30 days | 300 | $6.00 |

## Example

```bash
for kw in "防晒 油皮" "防晒 儿童" "防晒霜 测评"; do
  for s in general latest popular; do
    curl -s -G "https://api.okdata.online/v1/xiaohongshu/notes/search" \
      -H "Authorization: Bearer $OKDATA_API_KEY" \
      --data-urlencode "query=$kw" -d "sort=$s" -d "fields=id,title,metrics.likes" >> notes.jsonl
    echo >> notes.jsonl
  done
done
```

Then deduplicate on `id` in your notebook or sheet.

## Also worth knowing

- Results can differ from what you see in the app, which personalizes search for each logged-in user.
- Each page is a separate charge, so cap pages per query; the last pages of a query tend to add the fewest new notes.
- Engagement counts in search results are enough for ranking. Fetch [note detail](/apis/xiaohongshu/notes/get/) only for notes you will read.

## Is a bigger dataset available anywhere?

Not from public search. Xiaohongshu's official channels, such as its open platform and the PGY creator marketplace, serve merchants and advertisers and do not offer bulk keyword exports. For academic or market research needing a large sample, the keyword-splitting approach above is the honest path. The [content research](/solutions/content-research/) page shows how to plan keyword sets.

## Endpoints used

- [Xiaohongshu note search](https://okdata.online/apis/xiaohongshu/notes/search/) `xiaohongshu.notes.search`: $0.02 per call · about 20 notes per page

Updated 2026-11-12
