Break down all competitor ASIN traffic sources under a given keyword -- organic search, SP ads, SB brand ads, SBV video ads, SP recommendations, AC/ER/TR recommendation slots, with support for ASIN filtering, custom date ranges, and new traffic keyword filters. Trigger when the user mentions keyword traffic sources, which competitors are grabbing traffic under this keyword, organic traffic vs paid traffic share, SP ad exposure, brand ad share, SP recommendation slots, recommendation ad/non-ad split, search display analysis, Amazon's Choice or editorial recommendation exposure, keyword competitive landscape, ASIN traffic composition, keyword traffic, traffic structure analysis, search share, ad share, traffic source distribution, Nexscope, traffic analysis, SP recommendation, recommend position breakdown. Even if the user does not explicitly mention "Nexscope", if their need involves analyzing competitor ASIN traffic source distribution under a keyword, this skill should also be triggered.
npx skills add https://github.com/nexscope-ai/nexscope-ecommerce-skills --skill ecommerce.amazon-keyword-summary
This skill guides you on how to query and analyze keyword traffic source data for Amazon products, helping sellers understand the traffic structure behind keywords -- including organic search, Sponsored Products (SP) ads, brand ads, video ads, and various Amazon recommendation placements.
The Nexscope Keyword Summary tool returns, for one given keyword, the list of ASINs appearing under that keyword along with their per-keyword traffic exposure breakdown and their product-level cross-channel traffic mix. It answers: Who is taking traffic under this keyword, and through which channels?
Traffic channels analyzed:
Two score families (important -- do not mix):
naturalSearchExposureScore): the ASIN's overall exposure across all keywords.keyword... prefix, e.g. keywordNaturalExposureScore): the ASIN's exposure on just this one queried keyword.| Parameter | Type | Description |
|-----------|------|-------------|
| searchKeyword | string | The search keyword to analyze. Translate to the target marketplace's language when applicable. Max 1000 characters. |
| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| country | string | US | Marketplace code (13 supported -- see list below). |
| asins | string | (none) | Comma-separated ASIN filter; if omitted, returns all ASINs appearing under the keyword. Max 1000 chars. |
| condition | string | (none) | Filter by a specific traffic source. Only one value per request. See Condition Filters below. |
| last7d | boolean | true | Use the latest 7 days. When false, the API uses startDate/endDate. |
| startDate | string | -- | yyyy-MM-dd. Takes effect when last7d=false; if omitted, the system's latest integral week is used. |
| endDate | string | -- | yyyy-MM-dd, paired with startDate. |
| sortBy | string | (default) | Sort field. See sortBy section below. |
| pageNum | integer | 1 | Page number for pagination. |
| pageSize | integer | 100 | Results per page. Min 10, max 100. |
| desc | boolean | true | Sort in descending order. |
13 marketplaces: US (United States), UK (United Kingdom), DE (Germany), CA (Canada), JP (Japan), FR (France), ES (Spain), IT (Italy), MX (Mexico), AU (Australia), AE (United Arab Emirates), BR (Brazil), SA (Saudi Arabia).
Default marketplace is US. Codes outside this list will be rejected by the API pattern.
Each request can include at most one condition filter. Flag-style:
| Value | Meaning |
|-------|---------|
| nfPosition | Natural search traffic keywords |
| isSpAd | SP ad keywords |
| isVedioAd | Video ad keywords |
| isBrandAd | Brand ad keywords |
| isPPCAd | PPC ad keywords (all paid ad types) |
| isSearchRecommend | Search recommendation keywords |
| acAd | SP recommendation (Trending now / Customers frequently viewed / etc.) |
Period-count filters (.total full / .in new-in):
| Value | Meaning |
|-------|---------|
| totalPeriod.in | Newly-entered traffic keywords this period |
| nfKeywordCnt.total / nfKeywordCnt.in | Keywords with (new) organic exposure |
| adKeywordCnt.total / adKeywordCnt.in | Keywords with (new) ad exposure |
| allSpKeywordCnt.total / allSpKeywordCnt.in | (New) SP-ad keywords (regular + recommendation) |
| spKeywordCnt.total / spKeywordCnt.in | (New) SP regular keywords |
| recSpKeywordCnt.total / recSpKeywordCnt.in | (New) SP recommendation keywords |
| allSbKeywordCnt.total / allSbKeywordCnt.in | (New) SB-ad keywords |
| sbKeywordCnt.total / sbKeywordCnt.in | (New) SB regular keywords |
| sbvKeywordCnt.total / sbvKeywordCnt.in | (New) SBV keywords |
Leave empty for system default. Valid values:
totalKeywordNum (total keyword count), naturalKeywordNum, brandKeywordNum, vedioKeywordNum, acKeywordNum, erKeywordNum, trKeywordNum, sumScore (total exposure across all keywords), totalNfScore, totalSpSocre (note spelling), totalBrandScore, totalVedioScore, totalAcScore, totalTrScore, totalErScore.
POST /sif/keywordSummary (complete params/response/error codes in references/api.md)python scripts/amazon_keyword_summary.py '<JSON params>' [--inline]Output strategy (script default behavior):
<cwd>/nexscope/<YYYY-MM-DD>/<session>/data/nexscope-sif-keyword-summary-<timestamp>.json (<cwd> is the working directory at script execution time, i.e. the current project directory in Claude Code; <session> is taken from the SESSION_ID env var, auto-grouped by user task; do not write to /tmp, error if current directory is not writable)total/costToken, length of largest list field + first 3 samples)--inline to force full output to stdout (still saves to disk)Data reading tip: Check the summary first to decide if it's enough; when specific fields are needed, prefer using jq or ConvertFrom-Json to extract from the saved json file on demand, avoiding loading the entire JSON into context.
1. Basic keyword traffic overview
Query the traffic source breakdown for a keyword in the US marketplace:
searchKeyword: "wireless charger", country: "US"
2. Filter for organic search traffic only
See only ASINs that appear in natural search results for a keyword:
searchKeyword: "wireless charger", country: "US", condition: "nfPosition"
3. Analyze SP ad competition
Find which ASINs are running SP ads for a keyword:
searchKeyword: "wireless charger", country: "US", condition: "isSpAd"
4. SP recommendation slots
Find ASINs surfacing in SP recommendation slots (Trending now, Customers frequently viewed, etc.):
searchKeyword: "wireless charger", country: "US", condition: "acAd"
5. Keyword analysis for a non-US marketplace
Analyze traffic sources in the Japan marketplace (use the local language keyword):
searchKeyword: "wireless charger" (in Japanese), country: "JP"
6. Focus on specific competitor ASINs
Limit results to a small set of competing ASINs:
searchKeyword: "wireless charger", country: "US", asins: "B01NBNDC1T,B09VLJJPL6"
7. Custom date range
searchKeyword: "wireless charger", country: "US", last7d: false, startDate: "2026-04-05", endDate: "2026-04-11"
8. Rank ASINs by their overall SP exposure
searchKeyword: "wireless charger", country: "US", sortBy: "totalSpSocre", desc: true
9. Newly-entered traffic keywords this period
searchKeyword: "wireless charger", country: "US", condition: "totalPeriod.in"
naturalSearchExposureScore (product-wide) with keywordNaturalExposureScore (this keyword only). Label columns so users know which scope they are reading.last7d; or startDate ~ endDate if a custom range was set. Also surface dataPeriodStartDate on each row.msg field and suggest adjusting query parameters (e.g., checking keyword spelling or marketplace code).condition value can be used per request. To compare multiple traffic sources, make separate requests.searchKeyword should be in the language of the target marketplace for best results.Applicable -- Traffic source and competition structure analysis for Amazon keywords:
| User Says | Scenario |
|-----------|----------|
| "Where does the traffic come from for this keyword" | Traffic source breakdown |
| "How much organic vs paid traffic" | Organic/paid ratio analysis |
| "Who's running SP ads for this keyword" | SP ad competition analysis (condition=isSpAd) |
| "Which products are in SP recommendation slots" | SP recommendation lookup (condition=acAd) |
| "Which products have Amazon's Choice" | AC badge analysis (via amazonsChoiceExposureScore) |
| "Is this keyword dominated by ads" | Ad saturation assessment |
| "Show me the brand ad competition" | Brand ad landscape analysis |
| "Traffic structure for my competitor's keyword" | Competitive traffic analysis |
| "Which products get editorial recommendations" | ER placement analysis |
| "Compare these 2 ASINs on this keyword" | ASIN filter via asins="B0A,B0B" |
| "For the week of March 8, traffic under this keyword" | Custom startDate/endDate window |
| "Newly-entered traffic keywords this period" | New-in filter (condition=totalPeriod.in) |
Not applicable -- Needs beyond keyword traffic source analysis:
Set the NEXSCOPE_API_KEY environment variable. If credentials are missing or expire, visit https://www.nexscope.ai/help/skills-external-access?co-from=skillNS to top up credits.
Take nexscope-ai/ecommerce.amazon-keyword-summary from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.