Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Channel economics: design and analyze the financial structure of go-to-market channels. Use when picking a channel mix, modeling partner margin or TCO, designing partner tiers and rebates, or analyzing channel conflict.
.claude/skills/borghei-channel-economics/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-09 | ✗→✓ | ▲ Improved | 306% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 394% | 0% |
| case-11 | ✗→✓ | ▲ Improved | 212% | 0% |
| case-13 | ✗→✓ | ▲ Improved | 291% | 0% |
| case-18 | ✗→✓ | ▲ Improved | 276% | 0% |
End-to-end financial modeling and design of go-to-market channels: direct sales economics, reseller / distributor margin structures, marketplace fees, partner tier economics, channel conflict resolution, and the TCO frameworks that compare channel options apples-to-apples.
This skill provides the financial backbone for channel strategy. For strategic partnership design (which channel to invest in, how to structure the partnership), see business-growth/partnerships-architect. For partner-deal-level approval mechanics, see business-growth/deal-desk.
| Situation | Skill applies | |-----------|---------------| | Deciding direct vs partner-led for a new product | Yes — start with channel model decision tree | | Designing a partner tier structure (silver/gold/platinum) | Yes — see partner tier economics | | Modeling a specific partner deal's margin / payback | Yes — scripts/channel_margin_calculator.py | | Analyzing channel conflict (overlapping direct + partner deals) | Yes — see channel conflict + scripts/channel_mix_optimizer.py | | Building a partner program rebate / SPIFF structure | Yes — see rebate design | | Comparing AWS Marketplace vs direct list-price economics | Yes — scripts/channel_margin_calculator.py --channel marketplace | | Negotiating a specific partner contract | Use business-growth/contract-and-proposal-writer for the contract; this for the economics | | Strategic partnership design (joint go-to-market, OEM, white-label) | Use business-growth/partnerships-architect first |
Six core channel models. Most companies use a mix.
What's the product's complexity + price point?
Low complexity, low price (< $10k ACV):
├── Self-serve / PLG → no channel
├── E-commerce → direct via web
└── Marketplace (AWS / Azure / GCP / Salesforce AppExchange) → if buyer already there
Medium complexity, mid-market price ($10k - $250k ACV):
├── Inside sales / SDR-led direct → if buyer journey is well-understood
├── Reseller / VAR (Value-Added Reseller) → if local presence / language matters
├── Marketplace → if buyer prefers procurement via existing relationship
└── Embedded / OEM → if your product is a component in someone else's offering
High complexity, enterprise ($250k+ ACV):
├── Direct field sales → standard for high-touch enterprise
├── Strategic SI / Integrator (Accenture, Deloitte, etc.) → if implementation is a substantial project
├── ISV / Embedded → if you're a feature in a larger platform
└── Reseller / Distributor → for regional or vertical specialty
Operational / managed-service buyer:
└── MSP (Managed Service Provider) → if customer wants outsourced operationsSee references/channel-models-direct-partner-marketplace.md for each model in depth: economic structure, typical margin splits, when each works / fails, contract patterns.
Apples-to-apples channel comparison requires a consistent TCO model. The naive comparison ("direct gets 100%, reseller gets 70%") misses critical costs.
Channel Contribution Margin
= Channel-attributed Revenue
− COGS
− Partner Discount/Commission
− Channel-specific Sales Cost (allocated)
− Channel-specific Marketing Cost (MDF, co-marketing)
− Partner Enablement Cost (training, certification)
− Channel Operations Cost (channel manager headcount)
− Channel-specific Support Cost (T1 partner support)For a $100k ACV deal:
| Component | Direct | Reseller (30% off) | AWS Marketplace | |-----------|--------|---------------------|-----------------| | Customer payment | $100,000 | $100,000 | $100,000 | | Reseller / marketplace fee | $0 | -$30,000 (30% discount) | -$3,000 (3% AWS fee) | | Revenue to us | $100,000 | $70,000 | $97,000 | | COGS (15%) | -$15,000 | -$10,500 | -$14,550 | | Sales cost (allocated CAC) | -$25,000 | -$5,000 | -$8,000 | | Marketing cost (MDF / listing) | -$2,000 | -$8,000 | -$5,000 | | Partner enablement (amortized) | $0 | -$3,000 | -$1,500 | | Channel ops (amortized) | $0 | -$2,000 | -$1,000 | | Support cost | -$5,000 | -$3,000 | -$5,000 | | Net contribution | $53,000 | $38,500 | $61,950 | | % of ACV | 53% | 38.5% | 62% |
The "30% discount" reseller deal is more like 14.5% margin difference once everything's counted. Marketplace can look better than direct on per-deal basis (Amazon's sales team brings the buyer) — but volume varies.
Use scripts/channel_margin_calculator.py --deal deal.yaml --channel <type> to model this for any deal.
See references/margin-and-tco-frameworks.md for the full TCO framework, per-cost-line guidance, and how to allocate "fully-loaded" sales / marketing / ops costs.
Multi-tier partner programs (Authorized → Silver → Gold → Platinum) are common. Designed badly, they reward effort that isn't valuable; designed well, they reward outcomes that drive growth.
| Tier | Annual revenue threshold | Discount % | Other benefits | Requirements | |------|-------------------------|------------|----------------|--------------| | Authorized | None | 10% | Standard support | Sign partner agreement; 1 certified person | | Silver | $100k | 15% | Co-marketing eligible (limited MDF) | $100k achieved; 3 certified people; 2 customer wins | | Gold | $500k | 20% + 5% rebate at threshold | Dedicated channel manager; MDF; deal registration; lead sharing | $500k achieved; 5 certified; 5 wins; 80% renewal rate | | Platinum | $2M | 25% + 7% rebate at threshold | Top-tier support; joint roadmap; preferred status; press release rights | $2M achieved; 10 certified; 10 wins; 90% renewal; participation in advisory board |
Use scripts/partner_tier_economics.py --tiers tiers.yaml to model tier economics: gross margin per tier, partner-side incentive, break-even revenue per partner per tier.
Three common reward structures, each with trade-offs:
Partner buys from you at a discount; sells to customer at list (or close). Margin = the spread.
Pros: Simple. Cash flow goes to partner immediately. Cons: Hard to incentivize specific behaviors. Discount is locked in regardless of performance.
Partner pays full price (or near it); earns rebate quarterly / annually based on revenue / tier achievement.
Pros: Ties reward to actual achievement; behaviors can be incentivized (e.g., bonus for selling new products). Cons: Cash-flow burden on partner. Complex to administer.
Per-deal or per-period bonuses for specific actions: bring leads, attend events, certify staff.
Pros: Highly targetable. Rewards specific behaviors you want. Cons: Easy to game; admin overhead high; partners often expect it without producing.
| Partner type | Front-end | Back-end | MDF/SPIFF | |--------------|-----------|----------|-----------| | Reseller (transactional) | 70-80% of total comp | 10-20% | 5-10% | | VAR (consultative selling) | 50-60% | 20-30% | 10-20% | | Distributor (volume play) | 80-90% | 5-15% | 5% | | ISV / Embedded | n/a (rev share) | 100% | 0 | | MSP | 40-60% | 20-30% | 10-30% |
Channel conflict happens when multiple sales paths chase the same customer. Common forms:
| Scenario | Resolution pattern | |----------|---------------------| | Direct rep finds opportunity also touched by partner | Deal registration: first to register wins; partner gets credit if they brought it | | Partner finds direct customer | If direct is already engaged: partner deferred (with consolation MDF perhaps); if not: partner leads | | Customer asks for direct after partner-led pilot | Honor partner relationship for term; transition at next renewal if appropriate |
| Scenario | Resolution pattern | |----------|---------------------| | Two resellers both pursuing same account | First-registered wins; second is offered alternative leads / regional swap | | Vertical specialist vs geographic | Vertical wins (customer values vertical expertise more) | | New partner pursues incumbent partner's customer | Incumbent has right of first refusal for 90 days |
Customer can buy via AWS Marketplace OR direct. If price is lower direct, customer feels gamed. If price is same, why not just use marketplace? Common resolution:
See references/channel-conflict-resolution.md for the full conflict-resolution playbook including deal registration process, neutral arbitration, conflict-of-interest disclosure.
Before modeling the channel economics, confirm these inputs. If any is unknown or vague, ASK — do not assume:
Stop rule: ask only the 2-3 that most change the output. If the user says "just draft it," proceed and list your assumptions at the top of the model.
scripts/channel_margin_calculator.py per channel option at expected ACVscripts/partner_tier_economics.py to size the gates and benefitsbusiness-growth/contract-and-proposal-writer)scripts/channel_margin_calculator.py --deal deal.yaml --channel partnerscripts/channel_mix_optimizer.py --revenue revenue.csv examines contribution margin per channel + identifies under-/over-invested channels| Script | Input | Output | |--------|-------|--------| | scripts/channel_margin_calculator.py | Deal spec YAML + channel type | Per-channel net contribution margin, cost line breakdown, comparison vs direct baseline | | scripts/partner_tier_economics.py | Tier definitions YAML | Per-tier: gross margin to us, gross margin to partner, partner break-even, tier graduation incentive analysis | | scripts/channel_mix_optimizer.py | Revenue CSV (by channel + quarter) | Per-channel revenue contribution, per-channel margin contribution, recommended rebalancing |
All scripts: stdlib only, argparse CLI, JSON or markdown output.
business-growth/partnerships-architect — strategic partnership design (this skill = the economics; that one = the strategy)business-growth/deal-desk — approval mechanics for partner deals (this skill = "what does it cost"; deal desk = "should we approve")business-growth/pricing-strategy — sets list pricing that channel economics deviates frombusiness-growth/revenue-operations — channel revenue is segmented in RevOps reportingbusiness-growth/contract-and-proposal-writer — drafts partner agreementssales-success/sales-operations — runs channel ops (deal registration, MDF approval, certification tracking)c-level-advisor/cs-cro-advisor — strategic channel-mix decisions are CRO-level| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | pass→pass | 28,562 | 29,505 | +3% | 1 | 1 | 0% | 4,777 | 8,927 | +87% | 0 | 0 | — |
case-02 | pass→pass | 23,074 | 32,159 | +39% | 1 | 1 | 0% | 3,631 | 9,584 | +164% | 0 | 0 | — |
case-03 | pass→pass | 29,715 | 37,011 | +25% | 1 | 1 | 0% | 4,557 | 10,302 | +126% | 0 | 0 | — |
case-04 | pass→pass | 11,567 | 14,552 | +26% | 1 | 1 | 0% | 2,211 | 6,718 | +204% | 0 | 0 | — |
case-05 | pass→pass | 20,087 | 18,181 | -9% | 1 | 1 | 0% | 2,734 | 6,752 | +147% | 0 | 0 | — |
case-06 | pass→pass | 16,311 | 14,826 | -9% | 1 | 1 | 0% | 2,286 | 6,248 | +173% | 0 | 0 | — |
case-07 | pass→pass | 15,583 | 15,120 | -3% | 1 | 1 | 0% | 2,159 | 6,246 | +189% | 0 | 0 | — |
case-08 | fail→fail | 13,193 | 9,211 | -30% | 1 | 1 | 0% | 2,015 | 5,510 | +173% | 0 | 0 | — |
case-09 | fail→pass | 7,585 | 2,235 | -71% | 1 | 1 | 0% | 1,093 | 4,443 | +306% | 0 | 0 | — |
case-10 | fail→pass | 5,996 | 2,905 | -52% | 1 | 1 | 0% | 917 | 4,531 | +394% | 0 | 0 | — |
case-11 | fail→pass | 9,729 | 2,508 | -74% | 1 | 1 | 0% | 1,443 | 4,498 | +212% | 0 | 0 | — |
case-12 | pass→pass | 14,349 | 15,792 | +10% | 1 | 1 | 0% | 2,047 | 6,413 | +213% | 0 | 0 | — |
case-13 | fail→pass | 11,885 | 13,663 | +15% | 1 | 1 | 0% | 1,521 | 5,953 | +291% | 0 | 0 | — |
case-14 | pass→pass | 9,444 | 8,136 | -14% | 1 | 1 | 0% | 1,296 | 5,328 | +311% | 0 | 0 | — |
case-15 | fail→fail | 18,326 | 15,998 | -13% | 1 | 1 | 0% | 2,723 | 6,390 | +135% | 0 | 0 | — |
case-16 | pass→pass | 10,875 | 11,197 | +3% | 1 | 1 | 0% | 1,434 | 5,690 | +297% | 0 | 0 | — |
case-17 | pass→pass | 14,911 | 14,209 | -5% | 1 | 1 | 0% | 2,005 | 6,051 | +202% | 0 | 0 | — |
case-18 | fail→pass | 9,761 | 11,922 | +22% | 1 | 1 | 0% | 1,572 | 5,908 | +276% | 0 | 0 | — |
case-19 | fail→pass | 14,675 | 13,982 | -5% | 1 | 1 | 0% | 2,127 | 6,027 | +183% | 0 | 0 | — |
case-20 | fail→fail | 24,113 | 39,417 | +63% | 1 | 1 | 0% | 3,506 | 10,090 | +188% | 0 | 0 | — |
case-21 | fail→fail | 14,870 | 20,254 | +36% | 1 | 1 | 0% | 2,469 | 7,313 | +196% | 0 | 0 | — |
case-22 | pass→pass | 19,936 | 21,755 | +9% | 1 | 1 | 0% | 2,985 | 7,486 | +151% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +27 percentage points is the difference between those two pass rates over the 22 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.