growth-engineering について
growth-engineering は、プロダクト主導の成長、実験、コンバージョン最適化に取り組むプロダクト・エンジニアリングチーム向けのガイドです。機能フラグ、A/B テスト、成長指標、転換パターンを扱います。
主な機能
- 01機能フラグの実装と管理
- 02A/B 実験の設計と統計上の注意点
- 03アクティベーションとバイラル成長のパターン
- 04コンバージョン最適化の実践
- 05成長指標の定義
- 06実験プラットフォームの参考情報
活用シーン
- 01機能の段階的な公開や停止スイッチの導入
- 02A/B 実験の設計と評価
- 03登録から有料化までの導線の見直し
- 04アクティベーションと継続率の追跡
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ travisjneuman/ .claude --skill growth-engineeringインストール後、Claude Code で/growth-engineeringを入力して読み込まれたか確認します。
詳細
グロースエンジニアリングスキル
プロダクト主導の成長、実験、コンバージョン最適化のためのインフラストラクチャとパターンです。
フィーチャーフラグシステム
実装パターン
// lib/feature-flags.ts
import { PostHog } from 'posthog-node';
const posthog = new PostHog(process.env.POSTHOG_API_KEY!);
interface FeatureFlags {
'new-onboarding-flow': boolean;
'pricing-experiment': 'control' | 'variant-a' | 'variant-b';
'ai-suggestions': boolean;
}
export async function getFlag<K extends keyof FeatureFlags>(
key: K,
userId: string,
): Promise<FeatureFlags[K]> {
const value = await posthog.getFeatureFlag(key, userId);
return value as FeatureFlags[K];
}
// Usage in component
const showNewOnboarding = await getFlag('new-onboarding-flow', user.id);
フィーチャーフラグのベストプラクティス
- 短期フラグ:実験の終了後(2週間未満)に削除します
- 長期フラグ:段階的なロールアウトや緊急停止スイッチに使用する運用切り替えです
- フィーチャーフラグを入れ子にしないでください(複雑さが指数関数的に増加します)
- 古いフラグは毎月整理します
- デバッグ用にフラグの評価をログに記録します
A/B テストのインフラストラクチャ
実験の設計
// lib/experiments.ts
interface Experiment {
id: string;
name: string;
variants: {
id: string;
weight: number; // 0-100, must sum to 100
}[];
targetAudience: {
percentage: number; // % of users included
filters?: Record<string, unknown>;
};
primaryMetric: string;
secondaryMetrics: string[];
minimumSampleSize: number;
startDate: Date;
endDate?: Date;
}
// Track experiment exposure
function trackExposure(experimentId: string, variantId: string, userId: string) {
analytics.capture({
event: '$experiment_started',
distinctId: userId,
properties: {
$experiment_id: experimentId,
$variant_id: variantId,
},
});
}
統計的有意性
- 最小サンプルサイズ:開始前に計算します(Evan Miller calculatorを使用)
- 途中で結果を確認しないでください:期間を事前に設定し、有望な結果が出ても早期に終了しないでください
- 順次検定:早期に確認する必要がある場合に使用します(p値を調整します)
- 最小検出可能効果:重要とみなす改善幅を定義します(例:5%の向上)
プロダクト主導の成長パターン
アクティベーション指標
| 段階 | 指標 | 例 |
|---|---|---|
| 登録 | 登録完了 | ユーザーがアカウントを作成する |
| セットアップ | プロフィール完了 | 必須項目を入力する |
| アハ体験 | コアバリューを体験 | 最初のプロジェクトを作成する |
| 習慣化 | 継続的な利用 | 最初の週に3セッション |
| 収益 | 有料へのコンバージョン | プランを契約する |
バイラルループ
// Referral system pattern
interface Referral {
referrerId: string;
referredEmail: string;
status: 'pending' | 'signed_up' | 'activated' | 'converted';
rewardGranted: boolean;
}
// Track referral funnel
function trackReferralStep(referralId: string, step: Referral['status']) {
analytics.capture({
event: 'referral_step',
properties: { referralId, step },
});
}
コンバージョン最適化
- 摩擦を減らす:フォーム項目を最小限にし、ソーシャルログインを有効にします
- ソーシャルプルーフ:ユーザー数、推薦文、ロゴを表示します
- 緊急性:トライアルのカウントダウンや期間限定オファーを提示します(控えめに使用します)
- 価値の提示:インタラクティブなデモや、明確なアップグレード経路を備えた無料プランを提供します
- パーソナライズ:ユースケースの選択に基づいてオンボーディングフローを調整します
グロース指標
| 指標 | 計算式 | 目標 |
|---|---|---|
| アクティベーション率 | アクティベーション済み / 登録済み | > 40% |
| トライアルから有料への転換率 | 有料 / トライアル開始 | > 15% |
| 純収益維持率 | (開始時MRR + 拡大 - 縮小 - 解約) / 開始時MRR | > 110% |
| バイラル係数 | 送信された招待数 * コンバージョン率 | > 0.5 |
| 価値実現までの時間 | 登録からアハ体験までの時間の中央値 | < 5 min |
| DAU/MAU比率 | 日次アクティブ / 月次アクティブ | > 20% |
実験プラットフォーム
| プラットフォーム | 種類 | 最適な用途 |
|---|---|---|
| PostHog | セルフホスト/クラウド | フルスタック、オープンソース |
| LaunchDarkly | クラウド | 大規模なフィーチャーフラグ運用 |
| Statsig | クラウド | 統計の自動化、データウェアハウスネイティブ |
| Growthbook | セルフホスト/クラウド | オープンソース、ベイズ統計 |
| Optimizely | クラウド | エンタープライズ、マルチチャネル |
関連リソース
~/.claude/skills/product-analytics/SKILL.md- 分析とトラッキングagent-product-analytics-specialistスキル - 分析のスペシャリスト~/.claude/skills/authentication-patterns/SKILL.md- PLG向け認証
すべてを測定します。絶えず実験します。効果のないものは取り除きます。
コメント
Markdown 対応