market-research

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

market-research

市场研究

Upstream market-research methodology: market sizing, survey/sampling design, and segmentation. The discipline here is method + assumptions: a TAM is never a single number, a survey is never powered only in aggregate, and a segment is never a demographic slice.
上游市场研究方法论:市场规模测算、调研/抽样设计、市场细分。核心原则是方法+假设:TAM绝非单一数值,调研样本不能仅按整体计算统计效力,细分群体也绝非单纯的人口统计切片。

Purpose

目的

Market-research analysts, product marketers, and strategy teams need rigorous evidence before anyone optimizes a campaign or sets a strategy. This skill structures three methodology decisions:
Three deterministic tools:
  1. market_sizer.py
    — Computes TAM/SAM/SOM by both top-down and bottoms-up methods side-by-side, reports the divergence, and flags failed triangulation. Never returns a single number.
  2. sample_size_planner.py
    — Survey sample size from confidence, margin of error, and expected proportion, with the finite-population correction and per-segment minimums (a survey powered overall is not powered per reported segment).
  3. segmentation_scorer.py
    — Scores candidate segments against Kotler's five criteria and enforces a substantiality + accessibility gate; a slice that is too small or unreachable is dropped.
市场研究分析师、产品营销人员和战略团队需要在优化营销活动或制定战略前获取严谨的证据支撑。本技能涵盖三类方法论决策工具:
三种确定性工具:
  1. market_sizer.py
    —— 同时采用自上而下和自下而上两种方法计算TAM/SAM/SOM,展示两种方法的差异,并标记三角验证未通过的情况。绝不返回单一数值。
  2. sample_size_planner.py
    —— 基于置信度、误差范围和预期比例计算调研样本量,支持有限总体修正和细分群体最低样本量(仅按整体计算统计效力的调研无法满足各细分群体的统计需求)。
  3. segmentation_scorer.py
    —— 依据Kotler的五项标准对候选细分群体进行评分,并设置足够规模+可触达的准入门槛;规模过小或无法触达的细分切片将被剔除。

When to use

使用场景

Invoke this skill when:
  • A board or exec asks "how big is this market?" and you need a defensible, triangulated answer.
  • You are fielding a survey and need a sample size that holds up per segment, not just overall.
  • You have a list of candidate segments and need to know which are real markets vs demographic slices.
  • You are synthesizing competitive intelligence and need a methodological backbone.
Do NOT use this skill to: measure a live campaign (attribution, ROAS, CPA →
marketing-skill/campaign-analytics
), build demand-gen / paid-media plans (
marketing-skill/marketing-demand-acquisition
), set positioning / GTM strategy (
marketing-skill/marketing-strategy-pmm
), or set pricing (
commercial/pricing-strategist
).
在以下场景中调用本技能:
  • 董事会或高管询问“这个市场有多大?”,你需要一个可辩护、经过三角验证的答案。
  • 你正在开展调研,需要确保各细分群体而非仅整体的样本量符合要求。
  • 你有一系列候选细分群体,需要区分哪些是真实市场,哪些只是人口统计切片。
  • 你正在整合竞争情报,需要一套方法论框架作为支撑。
请勿使用本技能:衡量活跃营销活动(归因、ROAS、CPA →
marketing-skill/campaign-analytics
)、制定需求生成/付费媒体计划(
marketing-skill/marketing-demand-acquisition
)、确定定位/GTM策略(
marketing-skill/marketing-strategy-pmm
),或制定定价策略(
commercial/pricing-strategist
)。

Workflow

工作流程

  1. Write the brief — Fill
    assets/market_research_brief_template.md
    (objective, the decision this informs, sizing approach, sampling plan, assumptions register).
  2. Size the market — Run
    market_sizer.py --input market.json --method both --profile {b2b-saas|consumer|enterprise|marketplace|hardware|services}
    . Reconcile the top-down/bottoms-up delta before quoting anything.
  3. Plan the survey — Run
    sample_size_planner.py --input survey.json
    . Fund the per-segment floors, not just the overall n.
  4. Score the segments — Run
    segmentation_scorer.py --input segments.json --profile <same>
    . Drop segments failing the substantiality/accessibility gate.
  5. Assemble the evidence pack — Combine into a brief. Every number carries its method + assumptions + confidence.
  1. 撰写简报 —— 填写
    assets/market_research_brief_template.md
    (目标、本次研究支撑的决策、测算方法、抽样计划、假设记录)。
  2. 测算市场规模 —— 运行
    market_sizer.py --input market.json --method both --profile {b2b-saas|consumer|enterprise|marketplace|hardware|services}
    。在引用任何数值前,先调和自上而下与自下而上方法的差异。
  3. 规划调研样本 —— 运行
    sample_size_planner.py --input survey.json
    。确保为各细分群体的最低样本量提供支持,而非仅关注整体样本量。
  4. 评分细分群体 —— 运行
    segmentation_scorer.py --input segments.json --profile <same>
    。剔除未通过足够规模/可触达门槛的细分群体。
  5. 组装证据包 —— 将上述内容整合为简报。每个数值都需附带其计算方法、假设条件和置信度。

Scripts

脚本

ScriptPurposeProfiles
scripts/market_sizer.py
TAM/SAM/SOM top-down AND bottoms-up + triangulation flagb2b-saas, consumer, enterprise, marketplace, hardware, services
scripts/sample_size_planner.py
Survey n + FPC + per-segment miniman/a (parameter-driven)
scripts/segmentation_scorer.py
Kotler 5-criteria scoring + gateb2b-saas, consumer, enterprise, marketplace, hardware, services
All three: stdlib-only,
--help
,
--sample
,
--output {human,json}
.
脚本用途配置模板
scripts/market_sizer.py
同时采用自上而下和自下而上方法计算TAM/SAM/SOM + 三角验证标记b2b-saas, consumer, enterprise, marketplace, hardware, services
scripts/sample_size_planner.py
计算调研样本量 + 有限总体修正 + 细分群体最低样本量无(参数驱动)
scripts/segmentation_scorer.py
Kotler五项标准评分 + 准入门槛校验b2b-saas, consumer, enterprise, marketplace, hardware, services
所有脚本:仅依赖标准库,支持
--help
--sample
--output {human,json}
参数。

Onboarding & customization

入门与自定义

Run the onboarding questionnaire once before you start — it captures your defaults so every tool in this skill is pre-configured. Customization is the point: the answers actually change tool behavior.
bash
python3 scripts/onboard.py            # interactive (also: --defaults, --set key=value, --reset)
python3 scripts/onboard.py --show     # see the questions + current effective config
Answers are saved to
~/.config/research-ops/market-research.json
(global) or
./.research-ops/market-research.json
(
--scope project
) and are read automatically by
config_loader.py
. They set the default market profile, the default survey confidence and margin of error, and the default sizing method. CLI flags always override saved config;
RESEARCH_OPS_NO_CONFIG=1
ignores it.
The four questions: market profile · survey confidence · margin of error · sizing method.
开始使用前请先运行一次入门问卷——它会记录你的默认配置,让本技能中的所有工具都预先配置完成。自定义是核心特性:你的回答会直接改变工具的行为。
bash
python3 scripts/onboard.py            # 交互式(也支持:--defaults, --set key=value, --reset)
python3 scripts/onboard.py --show     # 查看问题及当前生效配置
回答会保存到
~/.config/research-ops/market-research.json
(全局配置)或
./.research-ops/market-research.json
--scope project
项目级配置),并由
config_loader.py
自动读取。这些配置会设置默认的市场配置模板、默认的调研置信度误差范围,以及默认的测算方法。命令行参数始终会覆盖保存的配置;设置
RESEARCH_OPS_NO_CONFIG=1
可忽略配置文件。
四个核心问题:市场配置模板 · 调研置信度 · 误差范围 · 测算方法。

Optimize with autoresearch (opt-in)

结合autoresearch优化(可选)

This skill ships an isolated, opt-in bridge to
engineering/autoresearch-agent
. Only when you ask to "optimize" / "reconcile the sizing" / "run a loop" does an autoresearch experiment iteratively reconcile your market model so top-down and bottoms-up triangulate.
scripts/ar_evaluator.py
is the ground-truth evaluator; it prints
tam_divergence: <fraction>
(lower is better).
bash
/ar:setup --domain custom --name tam-triangulation \
  --target market.json \
  --eval "python3 ar_evaluator.py --target market.json" \
  --metric tam_divergence --direction lower
/ar:loop custom/tam-triangulation
Isolated: no hard dependency — autoresearch runs only on demand, and the loop edits
market.json
, never the evaluator.
本技能附带一个独立、可选的桥接工具,可对接
engineering/autoresearch-agent
。只有当你要求“优化”/“调和测算结果”/“运行循环”时,autoresearch实验才会迭代调和你的市场模型,使自上而下和自下而上的结果达成三角验证。
scripts/ar_evaluator.py
是真值评估工具,它会输出
tam_divergence: <fraction>
(数值越低越好)。
bash
/ar:setup --domain custom --name tam-triangulation \
  --target market.json \
  --eval "python3 ar_evaluator.py --target market.json" \
  --metric tam_divergence --direction lower
/ar:loop custom/tam-triangulation
独立性:无强依赖——autoresearch仅按需运行,且循环仅修改
market.json
,不会改动评估工具。

References

参考资料

  • references/market_sizing_canon.md
    — TAM/SAM/SOM frameworks (Bessemer, a16z); top-down vs bottoms-up; Fermi estimation; market-model conventions; common sizing fallacies.
  • references/survey_methodology.md
    — Cochran Sampling Techniques; Dillman Tailored Design Method; Groves Survey Methodology; question-wording bias (Schuman & Presser); AAPOR standards.
  • references/segmentation_and_ci.md
    — Kotler segmentation criteria; needs-based vs firmographic; Porter Five Forces; SCIP ethics; Christensen JTBD; conjoint/MaxDiff primer.
  • references/market_sizing_canon.md
    —— TAM/SAM/SOM框架(Bessemer、a16z);自上而下vs自下而上方法;费米估算;市场模型惯例;常见测算误区。
  • references/survey_methodology.md
    —— Cochran《抽样技术》;Dillman《定制设计法》;Groves《调研方法论》;问题措辞偏差(Schuman & Presser);AAPOR标准。
  • references/segmentation_and_ci.md
    —— Kotler细分标准;基于需求vs基于企业属性;波特五力模型;SCIP伦理准则;Christensen JTBD;联合分析/MaxDiff入门。

Assumptions

假设条件

  • The sizer reports both methods but cannot validate your inputs — a top-down "1% of a $40B market" is only as good as the cited source and the serviceable fraction.
  • Sample-size uses the conservative p=0.5 (maximum variance) unless you supply an expected proportion.
  • Segment scores are inputs you provide; the tool enforces the gates and the weighting, it does not gather the underlying evidence.
  • Competitive intelligence must follow the SCIP code of ethics — no misrepresentation, no protected information.
  • 规模测算工具会展示两种方法的结果,但无法验证你的输入数据——比如“400亿美元市场的1%”的准确性仅取决于引用来源和可服务比例的合理性。
  • 样本量计算默认采用保守的p=0.5(最大方差),除非你提供预期比例。
  • 细分群体的评分由你输入;工具仅执行准入门槛校验和权重计算,不会收集底层证据。
  • 竞争情报必须遵循SCIP伦理准则——不得虚假陈述,不得使用受保护信息。

Anti-patterns

反模式

  • A single TAM number with no method. Always triangulate top-down against bottoms-up.
  • Spurious precision. Size to the decision's tolerance; "$3.7142B" implies a confidence you do not have.
  • Powering only the total. Each reported segment needs its own sample floor.
  • Leading or double-barreled survey questions. Pre-test wording against the bias literature.
  • Calling a demographic slice a segment. It must be substantial AND accessible.
  • 单一TAM数值且无方法说明。始终用自上而下和自下而上方法进行三角验证。
  • 虚假精确。根据决策的容忍度进行测算;“37.142亿美元”意味着你并不具备的置信度。
  • 仅按整体计算统计效力。每个需要报告的细分群体都需要独立的样本量下限。
  • 诱导性或双重指向的调研问题。参照偏差相关文献预先测试问题措辞。
  • 将人口统计切片称为细分群体。细分群体必须具备足够规模且可触达。

Distinct from

与其他技能的区别

NeighborScopeDifference
marketing-skill/campaign-analytics
Attribution, ROAS, CPA, funnel of a live campaignThat measures spend deployed; this is upstream methodology
marketing-skill/marketing-demand-acquisition
Demand-gen, paid media, channel mixThat runs acquisition; this builds the evidence
marketing-skill/marketing-strategy-pmm
Positioning, GTM, categoryThat sets strategy; this sizes and segments the market
commercial/pricing-strategist
Pricing model + WTP + packagingThat sets price; this sizes the market
product-research
(sibling)
User/product discovery methodsThat studies users; this studies the market
关联技能范围差异
marketing-skill/campaign-analytics
活跃营销活动的归因、ROAS、CPA、转化漏斗分析该技能衡量已投入的营销支出;本技能是上游方法论
marketing-skill/marketing-demand-acquisition
需求生成、付费媒体、渠道组合该技能执行获客操作;本技能构建证据支撑
marketing-skill/marketing-strategy-pmm
定位、GTM、品类策略该技能制定战略;本技能测算和细分市场
commercial/pricing-strategist
定价模型、支付意愿、产品包装该技能制定价格;本技能测算市场规模
product-research
(同类技能)
用户/产品发现方法该技能研究用户;本技能研究市场

Quick examples

快速示例

bash
python3 scripts/market_sizer.py --sample
python3 scripts/sample_size_planner.py --population 62000 --confidence 0.95 --moe 0.05
python3 scripts/segmentation_scorer.py --sample --output json
The sample market triangulates a ~$1.47B top-down SAM against the bottoms-up figure and flags the divergence; the segmentation sample drops the "solopreneurs who might want analytics" slice for failing the substantiality and accessibility gates.
bash
python3 scripts/market_sizer.py --sample
python3 scripts/sample_size_planner.py --population 62000 --confidence 0.95 --moe 0.05
python3 scripts/segmentation_scorer.py --sample --output json
示例中的市场测算将自上而下得出的约14.7亿美元SAM与自下而上的结果进行三角验证,并标记差异;细分群体示例中,“可能需要分析工具的个体创业者”切片因未通过足够规模和可触达门槛被剔除。

Forcing-question library (Matt Pocock grill discipline)

强制问题库(Matt Pocock严格校验准则)

Walked one at a time by
/cs:grill-research-ops
or the orchestrator. Recommended answer + canon citation per question. Never bundled.
  1. "Is your TAM top-down or bottoms-up — and have you computed it both ways to triangulate?" Recommended: both; reconcile the delta before quoting a number. Canon: Bessemer / a16z market-sizing; Fermi estimation.
  2. "What decision will this market size actually drive — and at what precision does it matter?" Recommended: size to the decision's tolerance, not to a spurious-precision number. Canon: market-model conventions (Gartner/Forrester); decision-driven analysis.
  3. "What's your target margin of error and confidence — and does your sample clear it per segment, not just overall?" Recommended: power each reported segment, not only the total. Canon: Cochran Sampling Techniques; AAPOR standards.
  4. "Are your survey questions free of leading and double-barreled wording?" Recommended: pre-test the wording; cite the bias source. Canon: Schuman & Presser; Dillman Tailored Design Method.
  5. "Do your segments pass measurable / substantial / accessible / actionable — or are they just demographic slices?" Recommended: drop segments that fail substantiality or accessibility. Canon: Kotler segmentation criteria.
Walk depth-first. Lock 1-2 before opening 3-5. After all are answered, invoke
market_sizer.py
sample_size_planner.py
segmentation_scorer.py
.
/cs:grill-research-ops
或编排器逐一提问。每个问题都有推荐答案和权威引用。不得批量提问。
  1. “你的TAM是用自上而下还是自下而上方法计算的——是否同时用两种方法进行了三角验证?” 推荐答案:两种方法都用;在引用数值前先调和差异。 权威引用:Bessemer / a16z市场测算框架;费米估算。
  2. “这个市场规模数据将支撑什么决策——需要达到何种精度?” 推荐答案:根据决策的容忍度进行测算,而非追求虚假精确的数值。 权威引用:市场模型惯例(Gartner/Forrester);决策驱动分析。
  3. “你的目标误差范围和置信度是什么——样本量是否满足各细分群体的要求,而非仅整体?” 推荐答案:为每个需要报告的细分群体计算统计效力,而非仅关注整体。 权威引用:Cochran《抽样技术》;AAPOR标准。
  4. “你的调研问题是否不存在诱导性或双重指向的措辞?” 推荐答案:预先测试问题措辞;引用偏差相关依据。 权威引用:Schuman & Presser;Dillman《定制设计法》。
  5. “你的细分群体是否符合可衡量/足够大/可触达/可行动标准——还是只是人口统计切片?” 推荐答案:剔除未通过足够规模或可触达门槛的细分群体。 权威引用:Kotler细分标准。
按深度优先顺序提问。先确认1-2题,再提问3-5题。所有问题回答完毕后,依次调用
market_sizer.py
sample_size_planner.py
segmentation_scorer.py