Module 3: Target And Positioning

Repositioning: when, why, and the risk of copying the leader

Description

Mercado already has a verified positioning statement (lesson 6): it wins the explorers segment with a solid margin (1.65), and clearly loses the exactSkuShoppers segment. Sooner or later, someone at the company — almost always with good intentions, almost always looking at the size of the market being left on the table — is going to propose something that sounds reasonable: "what if we also improve price and delivery speed, so we don't lose so much ground to the megastore?" It isn't a silly question. It is, in fact, the question that most often destroys a strong positioning without anyone noticing it's being destroyed.

This lesson builds that temptation as a runnable experiment: we take Mercado and "stretch" it — raising price and deliverySpeed, the megastore's two dimensions — while paying the real cost of that decision: to invest there, someone has to pull investment from somewhere else, and that somewhere else is the two dimensions that make Mercado win today (curatedDiscovery, sellerTrust). You're going to see, with numbers, the result of that bet in both segments at once.

Connection to the module. This isn't a new model — it's positionFit, the same one from the whole module, run on a hypothetical version of Mercado that decided to reposition itself. The lesson connects directly to lesson 5 (owning a category, not adding up points) and to lesson 3 (the beachhead as a base to carefully expand from, not something you abandon at the first temptation).

An everyday analogy: the boutique restaurant that wants to compete with the fast-food chain

Imagine a small restaurant, known in its city for one exceptional dish nobody else makes quite the same way — people line up, pay more than usual, and come back exactly for that dish. One day, the owner notices the fast-food chain on the corner serves ten times more customers per hour, at a fraction of the price. They decide to "modernize the menu": simplify the signature dish's recipe so it comes out faster, lower the price a bit, add takeout options. The result, almost always, is the worst of both worlds: the signature dish stops being so special (loyal customers start noticing the difference), and the restaurant is still, by far, slower and more expensive than the fast-food chain — because the chain has a kitchen, a supply chain, and a scale built over years specifically to be fast and cheap, something a boutique restaurant can't match by changing a menu.

The owner didn't gain the chain's speed — they barely grazed it — and lost a real part of what made them special. That's exactly the risk of repositioning by copying the leader: it isn't enough to move a little toward their territory to compete there; you have to move enough to beat them, and that move almost always costs more than your original advantage can pay without disappearing.

Worked example: Mercado stretches toward the megastore, with numbers

"Stretched Mercado" reduces curatedDiscovery and sellerTrust from 9 and 8 to 6 and 6 (the investment being redirected) in order to raise price and deliverySpeed from 5 and 5 to 7 and 7 (the attempt to get closer to the megastore). Let's run positionFit with this repositioned product against the two segments you already know: its own beachhead (explorers) and the segment it was trying to get closer to (exactSkuShoppers).

function positionFit(target, product, alternatives) {
  const dims = Object.keys(target.weights).filter((d) => target.weights[d] > 0);
  const weightedScore = (c) => dims.reduce((sum, d) => sum + target.weights[d] * c.scores[d], 0);
  const productScore = weightedScore(product);
  const rivals = alternatives.map((a) => ({ name: a.name, score: weightedScore(a) }));
  const bestRival = rivals.reduce((a, b) => (b.score > a.score ? b : a));
  const byDimension = dims.map((d) => {
    const rivalBest = alternatives.reduce(
      (best, a) => (a.scores[d] > best.score ? { name: a.name, score: a.scores[d] } : best),
      { name: alternatives[0].name, score: -Infinity }
    );
    return { dimension: d, weight: target.weights[d], productScore: product.scores[d], bestRivalScore: rivalBest.score, bestRivalName: rivalBest.name, wins: product.scores[d] > rivalBest.score };
  });
  return { segment: target.name, productWeightedScore: Number(productScore.toFixed(2)), bestRival: bestRival.name, bestRivalWeightedScore: Number(bestRival.score.toFixed(2)), fitsSegment: productScore > bestRival.score, byDimension };
}

const mercado = { name: 'Mercado', scores: { curatedDiscovery: 9, sellerTrust: 8, catalogBreadth: 6, price: 5, deliverySpeed: 5, convenience: 6 } };
// Repositioned Mercado: lowers discovery and trust, raises price and
// deliverySpeed -- the investment pulled from one side to fund the other.
const mercadoStretched = { name: 'Mercado (repositioned toward price and speed)', scores: { curatedDiscovery: 6, sellerTrust: 6, catalogBreadth: 6, price: 7, deliverySpeed: 7, convenience: 6 } };
const genericMegastore = { name: 'genericMegastore', scores: { curatedDiscovery: 3, sellerTrust: 4, catalogBreadth: 9, price: 8, deliverySpeed: 9, convenience: 8 } };
const localShop = { name: 'localShop', scores: { curatedDiscovery: 6, sellerTrust: 9, catalogBreadth: 2, price: 4, deliverySpeed: 3, convenience: 3 } };
const alternatives = [genericMegastore, localShop];

const explorers = { name: 'explorers', weights: { curatedDiscovery: 0.4, sellerTrust: 0.3, catalogBreadth: 0.1, price: 0.1, deliverySpeed: 0.05, convenience: 0.05 } };
const exactSkuShoppers = { name: 'exactSkuShoppers', weights: { curatedDiscovery: 0, sellerTrust: 0, catalogBreadth: 0.1, price: 0.35, deliverySpeed: 0.35, convenience: 0.2 } };

console.log('=== BEFORE repositioning: real Mercado for explorers ===\n');
const before = positionFit(explorers, mercado, alternatives);
console.log(`productWeightedScore: ${before.productWeightedScore} | bestRival: ${before.bestRival} (${before.bestRivalWeightedScore}) | fitsSegment: ${before.fitsSegment} | margin: ${(before.productWeightedScore - before.bestRivalWeightedScore).toFixed(2)}`);

console.log('\n=== AFTER: stretched Mercado, evaluated on ITS OWN segment (explorers) ===\n');
const afterExplorers = positionFit(explorers, mercadoStretched, alternatives);
console.log(`productWeightedScore: ${afterExplorers.productWeightedScore} | bestRival: ${afterExplorers.bestRival} (${afterExplorers.bestRivalWeightedScore}) | fitsSegment: ${afterExplorers.fitsSegment} | margin: ${(afterExplorers.productWeightedScore - afterExplorers.bestRivalWeightedScore).toFixed(2)}\n`);
console.table(afterExplorers.byDimension.map((d) => ({ dimension: d.dimension, weight: d.weight, product: d.productScore, bestRival: `${d.bestRivalName}:${d.bestRivalScore}`, wins: d.wins })));

console.log('\n=== AFTER: stretched Mercado, evaluated on the segment it wanted to reach (exactSkuShoppers) ===\n');
const afterExact = positionFit(exactSkuShoppers, mercadoStretched, alternatives);
console.log(`productWeightedScore: ${afterExact.productWeightedScore} | bestRival: ${afterExact.bestRival} (${afterExact.bestRivalWeightedScore}) | fitsSegment: ${afterExact.fitsSegment} | margin: ${(afterExact.productWeightedScore - afterExact.bestRivalWeightedScore).toFixed(2)}\n`);
console.table(afterExact.byDimension.map((d) => ({ dimension: d.dimension, weight: d.weight, product: d.productScore, bestRival: `${d.bestRivalName}:${d.bestRivalScore}`, wins: d.wins })));

What to expect. Running the file with Node, the output is exactly this:

=== BEFORE repositioning: real Mercado for explorers ===

productWeightedScore: 7.65 | bestRival: localShop (6) | fitsSegment: true | margin: 1.65

=== AFTER: stretched Mercado, evaluated on ITS OWN segment (explorers) ===

productWeightedScore: 6.15 | bestRival: localShop (6) | fitsSegment: true | margin: 0.15

┌─────────┬────────────────────┬────────┬─────────┬──────────────────────┬───────┐
│ (index) │     dimension      │ weight │ product │      bestRival       │ wins  │
├─────────┼────────────────────┼────────┼─────────┼──────────────────────┼───────┤
│    0    │ 'curatedDiscovery' │  0.4   │    6    │    'localShop:6'     │ false │
│    1    │   'sellerTrust'    │  0.3   │    6    │    'localShop:9'     │ false │
│    2    │  'catalogBreadth'  │  0.1   │    6    │ 'genericMegastore:9' │ false │
│    3    │      'price'       │  0.1   │    7    │ 'genericMegastore:8' │ false │
│    4    │  'deliverySpeed'   │  0.05  │    7    │ 'genericMegastore:9' │ false │
│    5    │   'convenience'    │  0.05  │    6    │ 'genericMegastore:8' │ false │
└─────────┴────────────────────┴────────┴─────────┴──────────────────────┴───────┘

=== AFTER: stretched Mercado, evaluated on the segment it wanted to reach (exactSkuShoppers) ===

productWeightedScore: 6.7 | bestRival: genericMegastore (8.45) | fitsSegment: false | margin: -1.75

┌─────────┬──────────────────┬────────┬─────────┬──────────────────────┬───────┐
│ (index) │    dimension     │ weight │ product │      bestRival       │ wins  │
├─────────┼──────────────────┼────────┼─────────┼──────────────────────┼───────┤
│    0    │ 'catalogBreadth' │  0.1   │    6    │ 'genericMegastore:9' │ false │
│    1    │     'price'      │  0.35  │    7    │ 'genericMegastore:8' │ false │
│    2    │ 'deliverySpeed'  │  0.35  │    7    │ 'genericMegastore:9' │ false │
│    3    │  'convenience'   │  0.2   │    6    │ 'genericMegastore:8' │ false │
└─────────┴──────────────────┴────────┴─────────┴──────────────────────┴───────┘

Read both runs together, because separately they hide the decision's real cost. In exactSkuShoppers, the segment Mercado was trying to get closer to, repositioning did help a little: the margin went from −3.15 (5.3 against 8.45, lesson 2's original result) to −1.75 (6.7 against 8.45) — it improved, but it's still clearly losing, because the generic megastore didn't sit still waiting: it still structurally dominates price and deliverySpeed (8 and 9 against stretched Mercado's 7 and 7). Stretching wasn't even enough to tie the leader on its own turf.

Meanwhile, in explorers, the segment Mercado already had comfortably won, the margin collapsed from 1.65 to just 0.15 — and look at the dimension table: Mercado no longer wins on any individual dimension, not even curatedDiscovery, where it now ties exactly with localShop (6 against 6, and the model uses strict >, so a tie counts as not winning). Mercado still wins the whole segment, by a hair (fitsSegment: true, 6.15 against 6.00), but it no longer owns any clear category in anyone's mind — it stopped being "the place of surprising discovery" and became, dangerously close, another generalist Mercado from lesson 5. The net result: a small improvement where it was never going to win, in exchange for an almost-lost position where it used to clearly dominate. That trade, done with numbers in hand, is almost never worth it.

Going deeper: when repositioning DOES make sense

None of this means repositioning is always a mistake. There are real structural reasons to do it — the difference is in the reason, not the move itself:

  • The original segment matured or saturated. If explorers is already mostly won and growth there has slowed, expanding into a neighboring segment (not necessarily exactSkuShoppers, but something closer, like lesson 3's "reachable neighbor") can be the right step in Moore's sequence — not a flight from the beachhead, but its planned continuation.
  • The market changed underneath you. If the competitive alternatives changed — the generic megastore launched its own curation, for example — your original positioning might stop being different enough, and there it does make sense to reevaluate with fresh data, not out of fear, but because the terrain itself moved.
  • You discovered, with evidence, that you chose the wrong original beachhead. If positionFit showed a persistent negative margin even in your supposedly won segment, the signal isn't "stretch toward another segment" — it's "check whether you chose the original segment well," which is a different problem, from lessons 2 and 3, not this lesson.

What is not a good reason, and it's exactly what the worked example put to the test: repositioning because the leader's segment looks bigger on a spreadsheet, without first exhausting the growth available in the segment you already clearly won.

Common mistakes

Copying the leader's positioning instead of deepening your own. What happens: seeing that a competitor dominates a dimension (price, speed, scale), the team decides to "compete there too," instead of investing more in the dimension where it already has a real advantage. Why it happens: the leader's advantage is visible, measurable, and gives the sense of a concrete opportunity to "regain ground" — while continuing to invest in your own advantage incorrectly feels like doing nothing new. How to spot it: you saw the executed result — stretching toward the megastore's turf improved the margin in exactSkuShoppers from −3.15 to −1.75, without winning, while sinking the margin in explorers from 1.65 to 0.15. If your proposal to "compete on the leader's strength" doesn't include a calculation of how much your own strength weakens in exchange, you're missing half the analysis. How to fix it: before moving resources toward the leader's turf, calculate both sides of the equation, as in the worked example — the margin you gain in the new segment, and the margin you lose in the segment you already had. Compare them with equal seriousness.

Repositioning reactively, over a bad quarter, instead of for a structural reason. What happens: after a slow-growth quarter, someone proposes "broadening the target market" as a quick response, with no evidence the original segment is saturated or that the market has changed — just the pressure to show different numbers soon. Why it happens: repositioning feels like a concrete, visible action in front of an impatient board, while "keep deepening the same segment" feels, incorrectly, like doing nothing new in the face of an urgent problem. How to spot it: if the repositioning proposal can't point to which of the three structural reasons from "going deeper" applies (measured real saturation, real market change, or evidence of a badly chosen original beachhead), it's probably a reaction to quarterly fear, not a strategic decision. How to fix it: demand the same evidence you'd demand for any other strategic decision in this module — a positionFit (or its equivalent in informed judgment) showing, with data, which of the three structural reasons is occurring, before moving a single peso of investment.

Not measuring the opportunity cost in the segment you already had won. What happens: when evaluating the repositioning, the team only measures progress in the new segment ("we improved the margin with exactSkuShoppers from −3.15 to −1.75, we're heading the right direction!") without measuring, with the same rigor, what that same move cost the original segment. Why it happens: it's easier and more flattering to report an improvement (however small) than to report a decline in something that used to work well — nobody wants to be the one announcing that the number that was doing fine is now doing worse. How to spot it: if a repositioning decision's results report only has one column ("how did we do in the new segment") and not the parallel column ("how did we do, afterward, in the segment we already had"), the measurement is incomplete, on purpose or by oversight. How to fix it: always report both positionFit runs together, as in the worked example — the margin gained in the new segment is never evaluated alone, it's evaluated against the margin lost in the original segment, and only then can you know whether the trade was worth it.

Exercises

Exercise 1 — Calculate a middle ground. Design a less aggressive version of "stretched Mercado": instead of lowering curatedDiscovery and sellerTrust to 6, lower them only to 8 and 7 (a smaller cut), and raise price and deliverySpeed only to 6 (instead of 7). Calculate by hand the new productWeightedScore for explorers (weights: curatedDiscovery 0.4, sellerTrust 0.3, catalogBreadth 0.1, price 0.1, deliverySpeed 0.05, convenience 0.05; catalogBreadth and convenience unchanged, 6 each) and compare the resulting margin with the two extremes already seen (1.65 unstretched, 0.15 maximally stretched).

See solution

0.4×8 + 0.3×7 + 0.1×6 + 0.1×6 + 0.05×6 + 0.05×6 = 3.2 + 2.1 + 0.6 + 0.6 + 0.3 + 0.3 = 7.1. With bestRival unchanged (localShop at 6 for this segment), the margin would be 7.1 − 6 = 1.1 — between the original 1.65 and the maximally stretched 0.15, as you'd expect from a midpoint. The exercise confirms the cost of repositioning is gradual, not binary: every unit you take from curatedDiscovery or sellerTrust to give to price or deliverySpeed costs real margin in your beachhead, proportional to how far you stretch — there's no "free" point where you can win on both sides at once without paying anything.

Exercise 2 — Identify the structural reason (or its absence). For each scenario, say whether one of the three legitimate structural reasons from "going deeper" applies, or whether it's the reactive pattern from the second common mistake:

  • (a) Mercado's team discovers, with three years of data, that growth within explorers has sustained a slowdown over the last six quarters.
  • (b) After a single weak quarter, the VP of Sales proposes "broadening the focus" before the next board meeting.
See solution
  • (a) The first structural reason applies: real saturation, measured with several quarters of data, not a reaction to a single bad result. This is a legitimate basis for evaluating a second segment, following Moore's sequence (lesson 3).
  • (b) It's the reactive pattern from the second common mistake: one weak quarter, pressure from an upcoming board meeting, with no structural evidence of saturation or market change. Before accepting the proposal, the team should demand the same evidence scenario (a) actually has.

Exercise 3 — Defend NOT repositioning to the board. A Mercado board member, after seeing the generic megastore grow faster in total revenue, asks why the team isn't aggressively pursuing exactSkuShoppers. Using the worked example's exact numbers (margin before: 1.65; margin after in explorers: 0.15; margin after in exactSkuShoppers: −1.75, still negative), write the answer in one paragraph.

See solution

An example answer: "We already ran that experiment with data. Stretching toward price and delivery speed to get closer to exactSkuShoppers improves our margin there from −3.15 to −1.75 — still a clear defeat, the generic megastore still dominates those two dimensions with a structural advantage we're not going to match with a product tweak. Meanwhile, that same move costs us almost all the margin we had in explorers, dropping from 1.65 to 0.15 — we'd go from clearly owning the discovery category to being one tie away from losing it entirely. It's not that we don't want to grow revenue — it's that this specific path trades a solid win for a slightly-less-bad loss, and that isn't the kind of trade that builds a defensible position long-term."

Summary and next step

Repositioning by copying the leader's strength almost never works as expected: you saw, executed, that stretching Mercado toward price and speed barely improved its result in exactSkuShoppers (from −3.15 to −1.75, without winning) while nearly wiping out its real advantage in explorers (from a margin of 1.65 to just 0.15, and from winning one clear dimension to winning none). Repositioning can be right — when the original segment genuinely saturated, when the market changed, or when the original beachhead was badly chosen — but it's never free, and the cost always gets paid first in the category you already owned.

Before moving on you should be able to: calculate, for any repositioning proposal, the margin gained and the margin lost, and compare them with equal rigor; and name the three legitimate structural reasons for repositioning, telling them apart from a reaction to a bad quarter.

With all six content lessons complete — segment, beachhead, job, positioning, positioning statement, and the risk of repositioning — lesson 8's project brings it all together into a single deliverable: Mercado's complete target segment and positioning statement, verified with positionFit against both alternatives at once.

Resources

  • Geoffrey Moore, Crossing the Chasmgeoffreyamoore.com/book/crossing-the-chasm. The chapter on expanding beyond the first beachhead gives the framework for telling planned repositioning apart from reactive repositioning. In English.
  • Al Ries and Jack Trout, Positioning: The Battle for Your Mindoreilly.com/library/view/positioning-the-battle/9780071705875. The book that originated the term "positioning" in marketing, with several classic cases of brands that lost their category by trying to occupy the leader's. In English.
  • April Dunford, Obviously Awesomeaprildunford.com/books. Dunford devotes an entire chapter to what to do when positioning stops working — the practical guide for deciding whether to actually reposition, or reinforce what you already have. In English.
  • Marty Cagan (SVPG), "Product Market Fit" — svpg.com/product-market-fit. Cagan warns against diluting an already-achieved strong fit by chasing an adjacent market too soon. In English.