# Changelog of Google Trends Keyword Ranker and Compare Tool (`datagrit/google-trends-keyword-ranker`) Actor

- **URL**: https://apify.com/datagrit/google-trends-keyword-ranker/changelog.md
- **Full Actor documentation**: https://apify.com/datagrit/google-trends-keyword-ranker.md

## Changelog

### 0.2

- A keyword whose values are all 0 next to a much stronger keyword in the same list (or that round to 0 after linking) now gives a free `noData` status row instead of a billed row full of zeros, and is counted in "without enough search volume" in the run message.
- `scaleQuality` is `coarse` when the keyword's own values average below 3, so a placement built on whole-number rounding is no longer labelled `exact` or `good`.
- `trendDirection` for a keyword that starts from zero comes from the sign of the change (rising); `changePct` stays empty because the first third is 0.
- Tested inputs added: a rare keyword pair next to a strong one (status rows, no zero rows), the same pair alone (rising from zero, coarse), 3 keywords with timelines.

### 0.1

- First release: ranks up to 100 keywords per location on one shared Google Trends scale by chaining groups of 5 through a repeated anchor keyword, with a `scaleQuality` label (exact, good, coarse, unlinked) per keyword.
- Row types: keyword summary (average, peak, latest value, change, trend direction), interest over time (one row per keyword and location with the full timeline, raw and normalized), interest by region (country, state, metro or city) and related queries (top and rising, breakout flag).
- Several locations, time ranges up to all time, custom date ranges, search types (web, images, news, YouTube, shopping) and categories in one run.
- Keywords or locations without data give a single status row instead of billed rows; a changed Google Trends layout fails the run with a message instead of delivering empty rows.
- Tested inputs: seven programming-language keywords in one location with regions and related queries (typical, two linked groups), a keyword with no search volume (single status row) and a keyword list next to a rejected location code and a transient failure (status rows next to good rows).
