Strategy briefs and keyword classes
The per-ASIN strategy brief drives the listing editor, AI generation, and the conviction/proven/opportunity classification.
Every ASIN in RankASIN can have a strategy brief — a short, structured document you write about how that product is positioned, who it's for, and what questions it answers. The brief is not just a notes field. It feeds two systems: the AI generation prompts and the keyword classification engine.
What a strategy brief is
A strategy brief captures three things:
Positioning — One sentence describing what this product IS, what it does, and who it's for. This is the anchor the AI uses when generating or refining listing copy. "A gentle chemical exfoliant for sensitive and oily skin types, using PHA (Capryloyl Salicylic Acid) and plant actives to refine texture and control sebum without stripping moisture."
Customer questions — An array of concrete shopper questions this listing should answer. These are written as actual queries a shopper might type or ask Rufus: "What exfoliating pad is safe for sensitive skin?", "How do I reduce blackheads without irritating my skin?", "What's the difference between AHA and BHA pads?" The classification engine uses this list when deciding whether a keyword is proven or opportunity for this ASIN.
Audience notes — Supporting context about who the target buyer is, what they care about, and what objections they're likely to have. This is freeform — use it for anything about the audience that isn't captured in the positioning statement.
The brief is stored in the asin_strategy table, one row per ASIN.
How it feeds the editor
The strategy brief is visible on the Strategy tab inside the listing editor. You can write and update it there directly.
When you trigger AI generation or request an AI refinement on a field, RankASIN passes the brief to the generation prompt as a dedicated STRATEGY BRIEF block — separately from the AI's own research brief. This ensures the AI writes toward your specific positioning and answers your specific customer questions, not a generic skincare or product-category positioning.
This matters because the AI also has access to a research brief (generated from your keyword data and SQP/TST reports). The two briefs are passed as separate blocks so the AI can distinguish between what you've decided strategically and what the data is showing about market demand.
How it feeds classification
The classification engine (listing-classification-engine.ts) uses your strategy brief's customer_questions array when scoring keywords as proven vs. opportunity for this ASIN.
A keyword that appears in search reports and maps closely to one of your stated customer questions gets stronger evidence for the proven or opportunity classification. A keyword that shows up in reports but doesn't align with any of your customer questions may land at none — it might be search traffic you don't want, or it might be a gap you haven't thought about yet.
This makes the brief more than a writing aid. Writing specific customer questions gives the engine a sharper lens to classify your keyword inventory.
Keyword classes refresher
Four classes live in asin_keyword_map.keyword_class. They are per-ASIN — the same keyword can be "conviction" for one ASIN and "none" for another.
conviction — You've manually decided this keyword is a strategic must-have. The engine never writes or overwrites conviction. It's set only by you, in the sidebar "Add conviction" panel. Use it for the 3-5 terms that define this product's identity — the keywords you'd put in the title regardless of what the data says.
proven — Engine-assigned. The keyword has data showing it generates clicks and purchases for this ASIN. Protect and scale it.
opportunity — Engine-assigned. The keyword shows up in your reports but isn't converting yet for this ASIN. It's in the funnel but not winning. The priority is to improve the listing for this term and test it with PPC.
none — No class assigned. The keyword is in the master list but hasn't been classified for this ASIN, or the signal isn't strong enough.
Rows where you've manually set the class have keyword_class_manual_override = true. The engine never touches those rows — your decision is permanent unless you clear the override.
Workflow
The intended sequence for a new ASIN:
Write the strategy brief — Start with positioning (one sentence), then list 4-8 customer questions this listing should answer. Don't overthink it; you can refine it as you learn from data.
Add conviction keywords — In the sidebar, add the 3-5 keywords this ASIN lives or dies on. These are the terms you'd defend in any listing revision. Conviction is manual; the engine won't touch these.
Let the engine score everything else — After you save the brief, the engine runs automatically. It reads your conviction keywords, customer questions, and the keyword data from your reports to assign proven and opportunity classes.
Review the opportunity list — In the Opportunity panel, decide which keywords to act on. Terms that align with your customer questions and have real search volume deserve a place in your listing or backend keywords. Terms that don't align are worth understanding before dismissing.
The engine re-runs automatically after each of these actions: keyword harvest, strategy save, conviction add/remove, and a 5-second client-debounced window after any field edit in the listing editor. You don't need to trigger it manually.
The keyword tier (tier_1 / tier_2 / tier_3) and the keyword class (conviction / proven / opportunity / none) are independent dimensions. A keyword can be tier_1 at the seller-account level and still be "none" for a specific ASIN if that ASIN isn't targeting it. See Keyword tiers for the full two-dimensional tagging system.