

# Chronometrica vs Clockworks: Choose a TikTok Scraper for a Keyword Research Panel

Choose Chronometrica when your TikTok keyword panel needs clear original-query, related-query and page context; choose Clockworks when native sorting, date filters, hashtag or sound inputs, or a wider collection job matter more. Chronometrica documents the fields and collection limits needed to explain which query family produced a video and where it appeared in the collected pages. Clockworks also documents `searchQuery`, so query tracking is not exclusive to Chronometrica. [Chronometrica contract](https://apify.com/chronometrica/tiktok-search-scraper), [Clockworks contract](https://apify.com/clockworks/tiktok-scraper), [Clockworks input schema](https://apify.com/clockworks/tiktok-scraper/input-schema).

Both products are Apify Actors. An Actor is a hosted data collection program. This comparison concerns one job: collecting small, repeated sets of TikTok keyword results that a researcher can explain and compare.

The public question behind this guide was: “What are some good tools for seeing if a niche keyword is trending or falling off?” The available source contains that title, not the post body. It does not establish the poster’s budget, business or research process. [Observed question](https://www.reddit.com/r/TikTokLounge/comments/1okvvk8/what_are_some_good_tools_for_seeing_if_a_niche).

A repeated keyword panel is our proposed collection step for that question. A panel means a declared set of queries that you observe at chosen times. It can show changes in the search results you collected. It cannot directly measure all TikTok activity about a topic.

Chronometrica publishes this guide. The recommendation rests on the documented fit described below, not a live performance test. The public contracts were checked on October 20, 2026. No paid run or verified live output supports this comparison.

## Choose the output you need before choosing the Actor

Start with the record you must explain after collection. For this job, a list of videos alone is incomplete. You also need to know what you searched, which query led to each row, and which collection limits applied.

That record answers a practical question: did the observed set change while the collection setup stayed the same? If you cannot reconstruct the setup, a larger result set may simply reflect a broader search.

| Decision point | Chronometrica | Clockworks |
| --- | --- | --- |
| Query context | Documents `rootQuery`, `query` and `querySource` | Documents `searchQuery` |
| Page context | Documents `pageIndex` and `pageRank` | Check the required output against its contract |
| Panel controls | Query expansion, total cap, per-term limit, page limit, balanced or sequential distribution | Search-section selection, native sorting and date filters |
| Main reason to choose it | Explicit query-family and page accounting | Hashtag, sound or wider collection workflows |

The table summarizes the checked [Chronometrica contract](https://apify.com/chronometrica/tiktok-search-scraper), [Chronometrica input schema](https://apify.com/chronometrica/tiktok-search-scraper/input-schema), [Clockworks contract](https://apify.com/clockworks/tiktok-scraper) and [Clockworks input schema](https://apify.com/clockworks/tiktok-scraper/input-schema). A feature not described here remains outside this comparison; its omission does not establish that it is absent.

For the stated panel job, Chronometrica is a strong fit. Its documented fields let you make the query family and page position part of the saved evidence. That is the reason to choose it. These fields do not prove that its results measure trends more accurately.

## What Chronometrica’s query fields let you explain

Chronometrica documents five fields that matter to this decision: `rootQuery`, `query`, `querySource`, `pageIndex` and `pageRank`. Together, they describe the query family and observed page position behind a row. [Chronometrica contract](https://apify.com/chronometrica/tiktok-search-scraper).

A query family links an original search term with related terms used during collection. Keeping that link matters when the research moves beyond a fixed list of original terms. Otherwise, a result from a related search can look like evidence from the original search.

Keep the field names and their returned values in your saved data. Do not replace the full query context with one broad topic label. A label may help group rows for a report, but it cannot explain how each row entered the collection.

Keep page context for the same reason. It helps you locate a row within the collected search pages. Page position is an observation about that collection. It is not a direct measure of topic demand, audience size or a video’s standing across TikTok.

Before building a report, inspect the returned values and confirm that you understand them. Do not assume a page numbering convention or invent possible `querySource` values from a field name. Use the documented meaning and the actual returned data.

This is where the collector decision becomes concrete. If your review process needs original-versus-related query context beside each video, Chronometrica provides an explicit documented contract for that work.

## Fix the collection limits before the first observation

Chronometrica lets you control query expansion, the total unique-video cap, a per-term limit, a page limit, and balanced or sequential distribution. Balanced distribution shares the overall cap across searched terms. Sequential distribution fills earlier terms before later terms. Balanced distribution can lower the effective per-term maximum. [Chronometrica input schema](https://apify.com/chronometrica/tiktok-search-scraper/input-schema).

These settings affect what enters the panel. They belong in the research record, alongside the queries.

Balanced distribution fits a small panel when you want the total allowance shared across its terms. It does not promise that every term will return the same number of videos. Sequential distribution makes query order especially important because earlier terms receive their allowance first.

A page limit is another boundary. It limits how far collection proceeds for each query. A row cap limits how many videos the collection can retain. Neither setting tells you how many matching videos exist across the platform.

Query expansion changes the scope of the search. Start with expansion disabled when you need an explicit initial list. If you enable it later, save that change. The added queries can change both the searched terms and the allocation of the total cap.

Treat that change as a break in comparability. You can still inspect both collections, but you should not present them as repeated observations of an unchanged setup.

## A small input you can inspect

The following is a setup example, not a result, benchmark or estimate of search volume. Replace the terms with terms relevant to your research.

```json
{
  "queries": [
    "ugc ad examples",
    "skincare routine"
  ],
  "expandQueries": false,
  "maxResults": 8,
  "resultsPerQuery": 4,
  "maxPagesPerQuery": 1,
  "searchDistribution": "balanced"
}
```

A small input you can inspect

This input uses documented public fields and valid bounds. It declares two original queries, disables related-query expansion, sets an eight-video total cap, sets a four-result per-query limit, and allows one page per query with balanced distribution. [Chronometrica input schema](https://apify.com/chronometrica/tiktok-search-scraper/input-schema).

The limits describe the requested collection. They do not promise eight videos or four videos from each term. Inspect the actual output before you describe what the collection contains.

A checked public Task is available for this use case. A Task is a saved input preset. It gives you a starting configuration; it is not evidence of a completed collection or a measured trend. Review its settings before use. [TikTok Keyword Monitoring Snapshot Task](https://apify.com/chronometrica/tiktok-search-scraper/examples/tiktok-keyword-monitoring-snapshot).

The example terms show input shape. They do not form one coherent niche panel. For your own panel, choose terms that answer the same research question, or keep separate topics clearly separated in the analysis.

## Use a seven-step collection method

This method keeps the focus on choosing and checking the collector. For a fuller treatment of comparable query groups, see the [TikTok query sample protocol](/en/articles/tiktok-query-sample-protocol/).

1. Write the observation question. State what a useful result would show. For example, you may want to see whether the same kinds of videos keep appearing for fixed terms. Keep that question separate from a claim about total platform demand.
2. Save the complete setup. Record the original queries, expansion setting, distribution, total cap, per-term limit and page limit. Keep query order too. A short label for the setup helps you match later observations to the exact input.
3. Keep identity and context. Save video identity, the returned query-family fields and page context. Record the observation time in your own collection log. Do not assume that an observation-time field exists in the Actor output.
4. Repeat at declared times. Choose times that suit the question and record each actual collection time. Use the same setup. If a required change occurs, describe it and mark where the comparable series ends or restarts.
5. Count unique videos and query allocations. Count each distinct video once in the panel total. Separately inspect how collected results are allocated across queries. Mark observations that reach the total cap or other configured limits.
6. Compare the same measures. Compare unique videos with unique videos, and query allocations with query allocations. State the earlier count when you calculate percentage change. Consider ranking, source availability and duplicate results as possible causes of a changed set.
7. Check whether the collector still fits. If the question now requires a native date filter or sort control, use the documented Clockworks controls. Do not keep a fixed setup merely to preserve a series that no longer answers the question. [Clockworks input schema](https://apify.com/clockworks/tiktok-scraper/input-schema).

A useful saved observation therefore includes more than the downloaded rows. It also includes the exact input, collection time, unique-video count, query allocation counts and notes on reached limits. Those notes make the next comparison easier to explain.

## Keep video totals separate from query totals

A video can be relevant to more than one search term. That creates two different questions: how many distinct videos did the panel contain, and how were results associated with the panel’s queries?

Use video identity to answer the first question. Use the saved query context to answer the second. Do not add query counts and label the sum as unique videos unless you have checked that no video is counted more than once.

This distinction also changes how you read movement between terms. One term may account for more of the observed set while another accounts for less. That does not necessarily mean the panel contains more distinct videos overall.

Keep missing values visible. If a required identity or context value is missing, mark it as unknown and explain what you cannot count reliably. Zero means you observed none under a defined rule. Unknown means you lack the value needed to make that statement.

Apply the same care to a missed collection. A date with no completed observation is not a date with zero matching videos. Leave the gap visible rather than drawing a false decline.

## A fictional example: six videos, then eight at the cap

This is a fictional worked example, not observed TikTok data, a customer result or a live Actor test. A researcher repeats the same declared panel on two dates. The first observation contains six unique videos. The second contains eight unique videos and reaches the configured eight-video cap.

The arithmetic is:

- Observed difference: `8 - 6 = 2` videos.
- Change relative to the first observation: `2 / 6 × 100 = 33.33%`.

The percentage describes the observed row-count change. It does not establish a 33.33% rise in niche demand.

A clear report would say: “The panel contained six unique videos in the first observation and eight in the second. The second observation reached the configured cap.”

The cap matters because the second collection stopped at its allowed total. The observed count cannot tell you what a larger allowance would have returned. Search ranking, source availability or duplicate results can also change the collected set.

Inspect query allocation next. Check whether the change appears across the declared terms or is concentrated in one term. Keep that finding at the level the data supports: a change in this collected panel.

Do not silently raise the cap for the next observation and continue the same count comparison. If you need a larger panel, save the new setup and mark the change. The earlier observations remain useful records of their original collection limits.

## Make the final choice around the required evidence

Choose Chronometrica for this job when you need a bounded keyword panel whose rows retain explicit query-family and page context. Its documented controls let you declare the search scope and allocation before collection. Its documented output fields support the review after collection. [Chronometrica contract](https://apify.com/chronometrica/tiktok-search-scraper), [Chronometrica input schema](https://apify.com/chronometrica/tiktok-search-scraper/input-schema).

The main switch condition is a need for Clockworks’ documented native search controls or broader input workflows. [Clockworks contract](https://apify.com/clockworks/tiktok-scraper), [Clockworks input schema](https://apify.com/clockworks/tiktok-scraper/input-schema).

Start one small, relevant public collection with the [Chronometrica TikTok Search Scraper](https://apify.com/chronometrica/tiktok-search-scraper). Inspect video identity, confirm the row type, and check the required query-family and page context before expanding the work. Keep the exact input and observation time with the saved output. If native date filtering or sorting is required, use the alternative controls above. Otherwise, this is a clear, documented fit for an explainable keyword panel.

## Sources

- [Chronometrica TikTok Search Scraper: public contract](https://apify.com/chronometrica/tiktok-search-scraper)
- [Chronometrica TikTok Search Scraper: input schema](https://apify.com/chronometrica/tiktok-search-scraper/input-schema)
- [Clockworks TikTok Scraper: public contract](https://apify.com/clockworks/tiktok-scraper)
- [Clockworks TikTok Scraper: input schema](https://apify.com/clockworks/tiktok-scraper/input-schema)
- [TikTok Keyword Monitoring Snapshot: public Task](https://apify.com/chronometrica/tiktok-search-scraper/examples/tiktok-keyword-monitoring-snapshot)
- [Public question about niche keyword trends](https://www.reddit.com/r/TikTokLounge/comments/1okvvk8/what_are_some_good_tools_for_seeing_if_a_niche)
- [TikTok query sample protocol](/en/articles/tiktok-query-sample-protocol/)