Naver DataLab Search Trends Scraper avatar

Naver DataLab Search Trends Scraper

Pricing

from $0.02 / 1,000 trend point extracteds

Go to Apify Store
Naver DataLab Search Trends Scraper

Naver DataLab Search Trends Scraper

Compare Korean keyword demand over time with typed Naver DataLab ratios, audience filters, and export-ready time series.

Pricing

from $0.02 / 1,000 trend point extracteds

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Compare Korean search demand over time with structured data from public Naver DataLab trend charts.

This Apify Actor turns keyword groups, audience filters, and date ranges into export-ready time series. It returns one row per keyword group and period, including Naver’s normalized interest ratio and every filter used.

Use it to monitor brands, validate product seasonality, plan Korean content, or feed recurring search-demand dashboards—without manually downloading spreadsheets from DataLab.

The Actor automates the public 검색어트렌드 workflow on Naver DataLab.

It can:

  • compare up to five keyword groups in one run;
  • combine up to 20 spelling variants or related terms per group;
  • select daily, weekly, or monthly periods;
  • filter by mobile or PC searches;
  • filter by gender and Naver age bands;
  • preserve all query dimensions on every output row;
  • export results as JSON, CSV, Excel, XML, or RSS through Apify.

Values are normalized interest ratios, not absolute search volumes. A value of 100 is the highest observed point in the selected comparison and period.

Who is it for?

Korean SEO agencies

Compare client brands and non-brand terms, identify seasonality, and send recurring reports to Looker Studio or a warehouse.

Ecommerce and retail teams

Track category interest before promotions, compare product naming variants, and find the best launch window.

Content and localization studios

Validate Korean terminology, compare translated phrases, and prioritize editorial calendars using local search behavior.

Market researchers

Measure relative attention around launches, events, competitors, or public topics with consistent filters.

Data teams

Schedule repeat runs and ingest normalized time series through the Apify API, webhooks, Zapier, Make, Google Sheets, or MCP.

Why use this Actor?

Manual DataLab downloads work for one-off checks, but recurring comparisons require repeated form entry, spreadsheet cleanup, and filter documentation.

This Actor provides:

  • reproducible inputs;
  • typed records;
  • explicit source URLs;
  • automation-friendly output;
  • timestamps for auditability;
  • scheduled execution on Apify.

Input

The primary input is keywordGroups.

Each group has:

  • name: a short label displayed in output;
  • keywords: one to 20 terms that Naver combines into the group series.

Optional controls include startDate, endDate, timeUnit, device, gender, ages, and proxyConfiguration.

{
"keywordGroups": [
{ "name": "ChatGPT", "keywords": ["챗GPT", "ChatGPT"] },
{ "name": "Clova X", "keywords": ["클로바X", "하이퍼클로바"] }
],
"startDate": "2026-01-01",
"endDate": "2026-06-30",
"timeUnit": "week",
"device": "mo",
"gender": "",
"ages": []
}

Keyword group design

Group spelling variations when they represent the same topic.

For example, a group named Camping might contain 캠핑, Camping, 캠핑용품, and 캠핑장.

Keep competing concepts in separate groups so their ratios can be compared.

Naver supports at most five groups and 20 keywords per group. The Actor validates these limits before opening a browser.

Date ranges and time units

Use ISO dates in YYYY-MM-DD format.

Naver DataLab supports data from January 2016 onward. Recent daily data can lag by approximately one day.

Choose:

  • date for daily points;
  • week for weekly summaries;
  • month for long-term seasonality.

Weekly or monthly data is usually better for multi-year dashboards and produces fewer records.

Audience filters

device accepts all devices, mobile, or PC.

gender accepts all, female, or male.

ages accepts Naver’s age-band codes from 1 through 11. Leave it empty to include all ages.

Every emitted item repeats the chosen audience dimensions so exports remain self-describing.

Output data

One dataset item represents one keyword group in one period.

FieldTypeMeaning
keywordGroupstringUser-defined group label
keywordsarrayTerms combined in the group
periodstringDate, week, or month returned by Naver
rationumberNormalized interest from 0 to 100
timeUnitstringDaily, weekly, or monthly unit
startDatestringRequested range start
endDatestringRequested range end
devicestringAll, mobile, or PC
genderstringAll, female, or male
agesarraySelected age codes
sourceUrlstringNaver result page
scrapedAtstringUTC extraction timestamp

Output example

{
"keywordGroup": "ChatGPT",
"keywords": ["챗GPT", "ChatGPT"],
"period": "2026-06-22",
"ratio": 64.23891,
"timeUnit": "week",
"startDate": "2026-01-01",
"endDate": "2026-06-30",
"device": "mobile",
"gender": "all",
"ages": [],
"sourceUrl": "https://datalab.naver.com/keyword/trendResult.naver?hashKey=...",
"scrapedAt": "2026-07-12T02:30:00.000Z"
}

How to run it

  1. Open the Actor input page.
  2. Add one to five keyword groups.
  3. Select the date range and time unit.
  4. Optionally choose audience filters.
  5. Click Start.
  6. Open the Dataset tab to preview or export records.

Start with a short weekly range when testing a new group definition.

The Actor uses pay-per-event pricing: a small run-start charge plus a charge for each dataset item.

The final Store price is shown on the Actor pricing tab before you start a run. Longer daily ranges and more groups create more items. Weekly and monthly units reduce item counts.

Apify free-plan credits can be used where available.

Scheduling a trend monitor

Create an Apify schedule with a fixed input and run it weekly or monthly.

For stable dashboards:

  • keep keyword group definitions unchanged;
  • keep audience filters unchanged;
  • store scrapedAt and sourceUrl;
  • append new exports rather than overwriting historical snapshots.

Remember that ratios are normalized within each Naver comparison. Compare like-for-like runs.

API usage with Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/naver-datalab-search-trends-scraper').call({
keywordGroups: [{ name: 'Running', keywords: ['러닝', '조깅'] }],
startDate: '2026-01-01',
endDate: '2026-06-30',
timeUnit: 'week'
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

API usage with Python

from apify_client import ApifyClient
import os
client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('automation-lab/naver-datalab-search-trends-scraper').call(run_input={
'keywordGroups': [{'name': 'Running', 'keywords': ['러닝', '조깅']}],
'startDate': '2026-01-01',
'endDate': '2026-06-30',
'timeUnit': 'week',
})
items = client.dataset(run['defaultDatasetId']).list_items().items
print(items)

API usage with cURL

curl -X POST "https://api.apify.com/v2/acts/automation-lab~naver-datalab-search-trends-scraper/runs?token=$APIFY_TOKEN" \
-H 'Content-Type: application/json' \
-d '{"keywordGroups":[{"name":"Running","keywords":["러닝","조깅"]}],"timeUnit":"week"}'

Use the returned dataset ID to download items through the Apify Dataset API.

MCP integration

Connect the Actor to Claude through Apify MCP:

https://mcp.apify.com/?tools=automation-lab/naver-datalab-search-trends-scraper

Add it to Claude Code:

$claude mcp add --transport http naver-trends "https://mcp.apify.com/?tools=automation-lab/naver-datalab-search-trends-scraper"

Claude Desktop or another JSON-based MCP client can use:

{
"mcpServers": {
"naver-trends": {
"type": "http",
"url": "https://mcp.apify.com/?tools=automation-lab/naver-datalab-search-trends-scraper"
}
}
}

Example prompts:

  • “Compare weekly Korean search interest for these three skincare brands.”
  • “Create monthly Naver trend data for camping terms since 2020.”
  • “Run the Naver trend scraper for mobile users and summarize the peaks.”

In Claude Code, add the URL as an HTTP MCP server. In Claude Desktop, configure the same endpoint in your MCP client settings.

Integrations

Google Sheets

Use an Apify integration or Make scenario to append each completed dataset to a reporting sheet.

Looker Studio and warehouses

Export CSV/JSON to BigQuery, Snowflake, or an object store, then chart period against ratio by keywordGroup.

Slack alerts

Use a webhook to trigger downstream code when a run finishes and alert when the latest ratio changes materially.

Zapier and Make

Start the Actor from a campaign workflow, retrieve dataset items, and route them to dashboards or client reports.

Data interpretation

Naver sets the maximum point in the selected comparison to 100. Ratios do not represent absolute query counts.

Changing groups, dates, devices, genders, or age bands changes the normalization base. Avoid joining ratios from differently configured runs without documenting the comparison.

A zero can indicate very low relative activity, not necessarily zero searches.

Reliability and proxies

Direct public access is the default and avoids unnecessary proxy cost.

If Naver returns an access page from your environment, enable Apify Proxy and select South Korea. The Actor checks the page title and returns a clear error instead of emitting empty data.

Naver can change form fields or workbook layout. The extractor validates the workbook date header and fails visibly on unexpected formats.

Limitations

  • This Actor returns normalized ratios, not absolute search volume.
  • It currently targets public Search Trends, not Shopping Insight rankings.
  • Naver allows up to five groups and 20 terms per group.
  • Very recent daily values may not yet be finalized.
  • Geographic region within Korea is not a Search Trends filter.
  • Results depend on Naver DataLab availability and methodology.

Legality

The Actor accesses public Naver DataLab pages without logging in or bypassing private controls.

Use results in accordance with Naver’s terms, applicable laws, and your organization’s data policies. Do not use trend data to infer sensitive attributes about individuals. This Actor produces aggregate statistics only.

Troubleshooting

The run says Naver returned an access page

Enable Apify Proxy and choose country KR. If the issue persists, retry later rather than launching many parallel sessions.

The run returns no trend points

Check keyword spelling, date range, and audience filters. Try a broader term and leave age/gender filters empty.

My ratios differ between runs

Confirm that the keyword groups, date range, time unit, and audience filters are identical. Ratios are normalized per comparison.

A daily point is missing

Naver notes that daily data is reflected after processing on the following day. Use an earlier end date for scheduled reports.

For location and local-business workflows, use Naver Map Local Business Scraper.

Map listings and reviews are separate from DataLab search-interest time series. Choose this Actor when the goal is trend comparison rather than lead extraction.

FAQ

Does the Actor need a Naver account?

No. It automates the public DataLab Search Trends page.

Does it use the official Naver Open API?

No API credential is required. The Actor follows the public website workflow and parses the downloadable result workbook.

Can I compare Korean and English spellings together?

Yes. Put equivalent spellings in one keyword group so Naver combines them.

Can I retrieve absolute monthly search volume?

No. Naver DataLab exposes normalized ratios for this workflow.

Can I export Excel?

Yes. Apify datasets can be downloaded as Excel, CSV, JSON, XML, or other supported formats.

Can I run it automatically?

Yes. Use Apify schedules, API calls, webhooks, Zapier, Make, or MCP.

Use weekly for most monitoring, daily for campaign windows, and monthly for multi-year seasonality.

Are empty audience arrays valid?

Yes. An empty ages array means all age groups.

Support

If a run fails, share the run URL and a non-sensitive copy of the input through the Actor’s Issues tab. Include whether direct access or Apify Proxy was used.

For reproducible help, keep the failed run’s logs and dataset available.