---
name: variation-decision
description: Decide which variation to launch next, colour, size or pack count, ranked by open revenue and how easy each is to win. Pulls the real variation field from the Helium 10 MCP and the live listing. Use when a product is working and the question is what to add to it.
---

# The variation decision

You are helping a 7 or 8 figure Amazon seller decide **which variation to add next**. Colour, size, pack count, scent, material. One call, in order, with the revenue behind it.

This is usually the highest return decision they can make, because a variation inherits the parent's reviews and rank. It is also the one most often made on taste rather than data.

## What you need

- **Their ASIN**, or the parent they are extending.
- **Marketplace.** Default US.
- **Their landed cost per unit**, and whether a new variation changes it. A new colour usually does not. A new size usually does.

## The trap that ruins this analysis

**Amazon's variation twister is the source of truth for what colours exist, not Helium 10.** The MCP will tell you `variation_count` and it will tell you revenue, but it will not reliably tell you which child is which colour. Open the actual listing and read the twister.

Second trap, and it is the expensive one: **re-cut colour demand by price tier before you conclude anything.** Black winning overall usually means black wins in the cheap tier where the volume is. If the seller sits in the premium tier, the overall ranking is the wrong ranking, and following it puts them into a colour the budget buyers own.

Say both of these out loud when they apply.

## The work

### 1. Establish the parent

```
mcp__helium10__get_listing_details(main_asin=asin, marketplace="US")
```

Take `variation_count`, `monthly_revenue`, `child_monthly_revenue`, `price`, `review_count`. The gap between parent revenue and child revenue tells you how much the variation set is carrying versus the single winner.

If `variation_count` is 1, this is not a variation decision yet. It is a launch decision on a second SKU, and the parent has no review pool to lend. Say so.

### 2. Map the field at their price tier

```
mcp__helium10__search_products(
  filters={
    title_include_keyword: "<the product noun>",
    price_from: <their price in CENTS minus 30%>,
    price_to:   <their price in CENTS plus 30%>,
    monthly_revenue_from: 500000
  },
  marketplace="US",
  sort_by="-monthly_revenue"
)
```

Prices are in **cents** here. Add a `category` filter too, because `title_include_keyword` is a substring match on the title and will drag in unrelated products that merely mention the noun.

This returns up to 500 rows and will be written to a file. Project it:

```
jq -c '.data.products[0:40][] | {asin: .amazon_standard_identification_number, parent: .parent_amazon_standard_identification_number, title, brand, price, child_monthly_sales, child_monthly_revenue, review_count, variation_count}' <file>
```

**Use the `child_` revenue fields for anything you add up.** `monthly_revenue` is the parent total repeated on every child row, so summing it across a variation set counts the same money once per child. In a real call, 500 rows collapsed to 11 parents. That trap is fatal in this skill specifically, because variation analysis is entirely about comparing children within a parent.

You now have the price tier that actually matters, not the whole category.

### 3. Read the twister on the top 5

For the five highest revenue products in that tier, open the listing and list the variations each one offers. This is manual and it is the part that cannot be skipped. What you are building is a coverage table:

```
variation      offered by      combined revenue of those who offer it
black          5 of 5          $x
grey           4 of 5          $x
navy           2 of 5          $x
sage           0 of 5          $0
```

### 4. Score each candidate on two axes

**Open revenue.** Demand that exists and is under served. A variation offered by 5 of 5 competitors is proven but crowded. A variation offered by 0 of 5 is either an opening or a graveyard, and you have to say which you think it is and why.

**Cost to win.** Rank in an existing parent is nearly free. A new parent is a launch. Ask whether this variation can hang off the existing parent, because that single question changes the answer more than anything else in the analysis.

The decision is the variation with the best ratio, not the biggest number.

### 5. Turn tier revenue into their number

Tier revenue is what the whole market makes on a variation. Nobody launches to win the whole market. Convert it to what this seller would plausibly capture:

```
peer revenue share   =  seller's child_monthly_revenue on their best existing variation
                          / that variation's tier revenue (from step 3's coverage table)

projected revenue    =  candidate variation's tier revenue * peer revenue share
                          * cannibalization haircut (0.6–0.8 if it overlaps an existing
                            variant's use case, 1.0 if it does not)
                          * ramp factor (0.4–0.6 for year one, they are not starting
                            at steady state)
```

Do this for the top 2–3 candidates, not just the winner, so the seller can see why the recommendation beat the runner-up in dollars, not just in rank. State every multiplier you used, not just the result, an unstated haircut looks like a guess even when it is a reasonable one.

## The output

```
LAUNCH NEXT: [the one variation]

Then: [second], then: [third]

Price tier analysed: $[low] to $[high]   (their price: $[x])

variation    offered by    tier revenue    projected for them    verdict
[name]       [n] of 5      $[x]            $[x] steady-state      [one phrase]
...

Why [the winner]: [two sentences maximum]

Hangs off the existing parent: yes / no
If no, what that costs: [reviews from zero, rank from zero, weeks]

Projection assumptions: peer share [x]%, cannibalization [x], ramp [x]

Do not launch: [the tempting one that is wrong, and why]
```

## Rules

- **Name the price tier you analysed, every time.** A colour ranking without a price tier attached is the mistake this skill exists to prevent.
- **"Offered by 0 of 5" is not automatically an opening.** Sometimes nobody sells sage because nobody buys sage. Check whether the demand signal exists before calling it a gap, and if you cannot tell, say it is a gamble and size it.
- **Always answer the parent question.** Can this variation attach to the existing listing, yes or no. It is the difference between a $2,000 decision and a $40,000 one.
- **Cap the recommendation at three.** They will launch one.
- **State the projection multipliers, every time.** Peer share, cannibalization haircut and ramp factor are judgment calls layered on modelled data twice over. Say what you used so the seller can push back on a number, not just accept it.
- **The projected figure is a ceiling, not a promise.** Say so once, near the number, the way you would to someone about to plan a budget around it. Real results depend on stock, PPC, main image, and how fast the new variation earns its own reviews and rank.
- Helium 10 revenue is modelled. Do not split hairs inside 10%.
