name: analytics-product
description: “Analytics de produto — PostHog, Mixpanel, eventos, funnels, cohorts, retencao, north star metric, OKRs e dashboards de produto.”
risk: none
source: community
date_added: ‘2026-03-06’
author: renat
tags:
- analytics
- product
- metrics
- posthog
- mixpanel
tools: - claude-code
- antigravity
- cursor
- gemini-cli
- codex-cli
分析产品 — 用数据做决策
概览
产品分析 — PostHog、Mixpanel、事件、漏斗、群组、留存、北极星指标、OKR 和产品仪表板。启用用于:配置事件追踪、创建转化漏斗、群组分析、留存、DAU/MAU、功能开关、A/B 测试、北极星指标、OKR、产品仪表板。
何时使用此技能
- 当你需要在这个领域的专业帮助时
使用此技能时请勿
- 该任务与分析产品无关
- 一个更简单、更具体的工具可以处理该请求
- 用户需要通用帮助,而不具备领域专长
运作方式
[objeto]_[verbo_passado] Correto: user_signed_up, conversation_started, upgrade_completed Errado: signup, click, conversion分析产品 — 用数据做决定
“我们信仰上帝,其他人必须提供数据。”——W. 埃德华兹·戴明
Auri 的重要事件
AURI_EVENTS={# Aquisicao"user_signed_up":{"props":["source","medium","campaign"]},"onboarding_started":{"props":["step_count"]},"onboarding_completed":{"props":["time_to_complete","steps_skipped"]},# Ativacao"first_conversation":{"props":["intent","response_time"]},"aha_moment_reached":{"props":["trigger","session_number"]},"feature_discovered":{"props":["feature_name","discovery_method"]},# Retencao"conversation_started":{"props":["intent","user_tier","device"]},"conversation_completed":{"props":["messages_count","duration","rating"]},"session_started":{"props":["days_since_last","platform"]},# Receita"upgrade_viewed":{"props":["trigger","current_tier"]},"upgrade_started":{"props":["target_tier","trigger"]},"upgrade_completed":{"props":["tier","plan","revenue"]},"subscription_canceled":{"props":["reason","tier","tenure_days"]},"payment_failed":{"props":["attempt_count","error_code"]},}Posthog 实现(Python)
fromposthogimportPosthogimportos posthog=Posthog(project_api_key=os.environ["POSTHOG_API_KEY"],host=os.environ.get("POSTHOG_HOST","https://app.posthog.com"))deftrack(user_id:str,event:str,properties:dict=None):posthog.capture(distinct_id=user_id,event=event,properties=propertiesor{})defidentify(user_id:str,traits:dict):posthog.identify(distinct_id=user_id,properties=traits)## Uso:track("user_123","conversation_started",{"intent":"business_advice","device":"alexa","user_tier":"pro"})Auri 激活漏斗
Visita landing page (100%) | [meta: 40%] Clicou "Experimentar" (40%) | [meta: 70%] Completou cadastro (28%) | [meta: 60%] Fez primeira conversa (17%) <- AHA MOMENT | [meta: 50%] Voltou no dia seguinte (8.5%) | [meta: 40%] Usou 3+ dias na semana (3.4%) | [meta: 20%] Converteu para Pro (0.7%)优化漏斗
Para cada drop-off > benchmark: 1. Identificar: onde exatamente o usuario sai? 2. Entender: por que? (session recordings, surveys) 3. Hipotese: qual mudanca poderia melhorar? 4. Testar: A/B test com amostra estatisticamente significante 5. Medir: 2 semanas minimo, p-value < 0.05 6. Aprender: mesmo se falhar, entende-se o usuario melhor队列分析(每周保留)
defcalculate_cohort_retention(events_df):""" events_df: DataFrame com colunas [user_id, event_date, event_name] Retorna: matriz de retencao [cohort_week x week_number] """importpandasaspd first_session=events_df[events_df.event_name=="session_started"]\.groupby("user_id")["event_date"].min()\.dt.to_period("W")sessions=events_df[events_df.event_name=="session_started"].copy()sessions["cohort"]=sessions["user_id"].map(first_session)sessions["weeks_since"]=(sessions["event_date"].dt.to_period("W")-sessions["cohort"]).apply(lambdax:x.n)cohort_data=sessions.groupby(["cohort","weeks_since"])["user_id"].nunique()cohort_sizes=cohort_data.unstack().iloc[:,0]retention=cohort_data.unstack().divide(cohort_sizes,axis=0)*100returnretention保留基准(语音助手)
| Semana | Pessimo | Ok | Bom | Excelente |
|---|---|---|---|---|
| W1 | <20% | 20-35% | 35-50% | >50% |
| W4 | <10% | 10-20% | 20-30% | >30% |
| W8 | <5% | 5-12% | 12-20% | >20% |
定义 Auri 的北极星
Framework: 1. O que cria valor real para o usuario? -> Conversas que geram insight/acao 2. O que prediz crescimento de longo prazo? -> Usuarios com 3+ conv/semana 3. Como medir? -> "Weekly Active Conversationalists" (WAC) North Star: WAC (Weekly Active Conversationalists) Definicao: Usuarios com >= 3 conversas na semana que duraram >= 2 minutos Meta Ano 1: 10.000 WAC Meta Ano 2: 100.000 WAC仪表板北极星
defcalculate_north_star(db):wac=db.query(""" SELECT COUNT(DISTINCT user_id) as wac FROM conversations WHERE created_at >= NOW() - INTERVAL '7 days' AND duration_seconds >= 120 GROUP BY user_id HAVING COUNT(*) >= 3 """).scalar()return{"wac":wac,"wow_growth":calculate_wow_growth(db,"wac"),"target":10000,"progress":f"{wac/10000*100:.1f}%"}Posthog 功能标志
defis_feature_enabled(user_id:str,feature:str)->bool:returnposthog.feature_enabled(feature,user_id)ifis_feature_enabled(user_id,"new-onboarding-v2"):show_new_onboarding()else:show_old_onboarding()统计显著性计算器
fromscipyimportstatsimportnumpyasnpdefab_test_significance(control_conversions:int,control_visitors:int,variant_conversions:int,variant_visitors:int,confidence:float=0.95)->dict:control_rate=control_conversions/control_visitors variant_rate=variant_conversions/variant_visitors lift=(variant_rate-control_rate)/control_rate*100_,p_value=stats.chi2_contingency([[control_conversions,control_visitors-control_conversions],[variant_conversions,variant_visitors-variant_conversions]])[:2]significant=p_value<(1-confidence)return{"control_rate":f"{control_rate*100:.2f}%","variant_rate":f"{variant_rate*100:.2f}%","lift":f"{lift:+.1f}%","p_value":round(p_value,4),"significant":significant,"recommendation":"Deploy variant"ifsignificantandlift>0else"Keep control"}6. 命令
| Comando | Acao |
|---|---|
/event-taxonomy | Define taxonomia de eventos |
/funnel-analysis | Analisa funil de conversao |
/cohort-retention | Calcula retencao por cohort |
/north-star | Define ou revisa North Star Metric |
/ab-test | Calcula significancia de A/B test |
/dashboard-setup | Cria dashboard de produto |
/okr-template | Template de OKRs para produto |
最佳实践
- 提供有关您的项目和需求的清晰、具体的背景信息
- 在将所有建议应用到生产代码之前,请先进行审核
- 与其他互补技能结合进行全面分析
常见陷阱
- 将此技能用于其领域专业之外的任务
- 在不了解您具体情况的情况下应用建议
- 未提供足够的项目背景以进行准确分析
相关技能
growth-engine- 增强分析的补充技能monetization- 提升分析能力的互补技能产品设计- 增强分析的补充技能product-inventor- 增强分析的互补技能
限制
- 仅当任务明确符合上述描述的范围时,才使用此技能。
- 不要将输出视为环境特定验证、测试或专家审查的替代品。
- 如果缺少所需的输入、权限、安全界限或成功标准,请停下来并要求澄清。