Home
cd ../playbooks
Data & ReportingIntermediate

Simulate

Simulate revenue impact via Monte Carlo.

15 minutes
By communitySource
#simulate

Marketing teams lose hours to ad-hoc, inconsistent simulate work — Simulate revenue impact via Monte Carlo. Use when: testing channel mix changes, budget shifts, or new channel launches. This playbook turns the process into a repeatable, brand-aware workflow.

Who it's for: digital marketers, marketing managers, growth marketers

Example

"Run /simulate for our brand" → Simulate workflow output with brand context, structured inputs captured, process steps executed, and a complete deliverable ready for review.

CLAUDE.md Template

New here? 3-minute setup guide → | Already set up? Copy the template below.

# Simulate

# /dm:simulate

## Purpose

Run Monte Carlo simulation of marketing scenarios to predict revenue outcomes with probability distributions. Test channel mix changes, budget reallocations, new channel launches, and spending adjustments before committing real budget. This command models uncertainty explicitly — instead of single-point forecasts that hide risk, it generates thousands of simulated outcomes per scenario to show the full range of what could happen, with calibrated confidence intervals. Use it when the stakes are high enough that "expected ROI" alone isn't sufficient and you need to understand downside risk, upside potential, and the probability of hitting specific revenue targets.

## Input Required

The user must provide (or will be prompted for):

Get new playbooks like this one

One email a week with new Claude Code workflows. Free, like everything here.

No spam. Unsubscribe anytime.

README.md

What This Does

Run Monte Carlo simulation of marketing scenarios to predict revenue outcomes with probability distributions. Test channel mix changes, budget reallocations, new channel launches, and spending adjustments before committing real budget. This command models uncertainty explicitly — instead of single-point forecasts that hide risk, it generates thousands of simulated outcomes per scenario to show the full range of what could happen, with calibrated confidence intervals. Use it when the stakes are high enough that "expected ROI" alone isn't sufficient and you need to understand downside risk, upside potential, and the probability of hitting specific revenue targets.


Quick Start

Step 1: Create a Project Folder

Create a dedicated folder for this workflow (e.g. ~/marketing/simulate).

Step 2: Download the Template

Click Download above and save the file as CLAUDE.md in that folder.

Step 3: Run the Workflow

Open the folder in Claude Code and describe your goal. Claude will prompt you for any missing inputs, follow the structured process, and produce a complete deliverable.


Inputs You'll Need

The user must provide (or will be prompted for):

  • Scenarios to simulate: One or more marketing scenarios to model — each defined by a set of channel budgets and assumptions. A scenario might be "shift 30% of paid search budget to TikTok" or "launch YouTube Ads at $15K/month while maintaining current spend" or "cut display by 50% and redistribute to email and SEO." Each scenario must include channel-level budget allocations and can optionally include custom ROI assumptions per channel
  • Channel parameters per scenario: For each channel in each scenario: monthly budget allocation, expected ROI with mean and standard deviation (e.g., "3.2x +/- 0.8x" for a channel with historical variance), and saturation point if known (the spend level beyond which returns diminish sharply). If the user doesn't provide standard deviations, estimate from historical brand data or industry benchmarks
  • Projection period: Number of months to simulate forward — typically 3, 6, or 12 months. Longer projections carry wider confidence intervals due to compounding uncertainty
  • Revenue target (optional): A specific revenue figure the user wants to evaluate probability of achieving — e.g., "What's the probability we hit $2M in Q3?" The simulation will calculate the exact probability of reaching this target per scenario
  • Number of simulations (optional): How many Monte Carlo iterations to run per scenario — defaults to 10,000 which balances statistical precision with speed. Can increase to 50,000+ for high-stakes decisions where tighter confidence intervals matter
  • Constraints (optional): Minimum or maximum spend per channel, total budget cap, or required channel presence — the simulation respects these constraints when modeling outcomes

How It Works

  1. Load brand context: Read ~/.claude-marketing/brands/_active-brand.json for the active slug, then load ~/.claude-marketing/brands/{slug}/profile.json. Apply historical performance data, channel benchmarks, known saturation curves, and seasonality patterns from past campaigns. Also check for guidelines at ~/.claude-marketing/brands/{slug}/guidelines/_manifest.json — if present, load any budget or channel constraints. Check for agency SOPs at ~/.claude-marketing/sops/. If no brand exists, ask: "Set up a brand first (/dm:brand-setup)?" — or proceed with industry defaults.
  2. Define scenario parameters: For each scenario, structure the channel-level inputs — budget, ROI mean, ROI standard deviation, saturation point, and any interaction effects between channels (e.g., paid search lifts organic CTR, email amplifies content performance). Where the user hasn't provided standard deviations, calibrate from the brand's historical campaign data or fall back to industry benchmarks from skills/context-engine/industry-benchmarks.md. Validate that all scenarios are internally consistent — budgets sum correctly, no negative allocations, saturation points are above current spend.
  3. Run Monte Carlo simulation: Execute revenue-simulator.py with the structured scenario parameters. For each scenario, run N simulations (default 10,000) where each iteration samples channel ROIs from their probability distributions, applies diminishing returns near saturation points, models channel interaction effects, accounts for time-lag effects (SEO and content ramp over months, paid delivers immediately), and applies seasonal adjustment factors. Aggregate results into probability distributions per scenario.
  4. Calculate probability-weighted outcomes: For each scenario, compute expected revenue (mean of all simulations), median revenue (P50), pessimistic case (P10 — 90% chance of exceeding this), optimistic case (P90 — only 10% chance of exceeding this), and probability of hitting the user's revenue target if one was specified. Calculate risk-adjusted return using the Sharpe-like ratio of expected return divided by outcome variance.
  5. Compare scenarios side-by-side: Build a comparison matrix showing all scenarios against the current baseline. Rank by expected revenue, by risk-adjusted return, and by probability of hitting the revenue target. Identify the dominant scenario (best on most metrics) and flag any scenarios that are strictly dominated (worse on every metric than another option).
  6. Run sensitivity analysis: For the top 2-3 scenarios, identify which input variables have the highest impact on outcomes — which channel's ROI uncertainty drives the most variance, whether the result is sensitive to saturation assumptions, and how much the recommendation changes if a key assumption shifts by 20%. Present as a tornado chart ranking variables by impact.

What You Get

A comprehensive simulation report containing:

  • Per-scenario results: Expected revenue (mean), median revenue (P50), pessimistic case (P10), optimistic case (P90), probability of hitting the revenue target, risk-adjusted return score, and revenue probability distribution visualization description
  • Scenario comparison table: All scenarios ranked side-by-side on expected revenue, risk-adjusted return, target probability, and delta versus current baseline — with the recommended scenario highlighted and dominance relationships noted
  • Sensitivity analysis: Tornado-chart breakdown of which variables drive the most outcome variance in the top scenarios — ROI assumptions, saturation points, channel interactions, and seasonal factors ranked by impact magnitude
  • Channel contribution breakdown: Per scenario, how each channel contributes to total expected revenue with confidence intervals — showing where the value is generated and where the uncertainty lives
  • Optimal scenario recommendation: The recommended scenario with confidence level, reasoning that accounts for both expected return and risk profile, and specific conditions under which the recommendation would change
  • Simulation metadata: Number of iterations, convergence check (did results stabilize), key assumptions documented, and data sources used for calibration

$Related Playbooks

Data & Reporting

Google Sheets Automation

Google Sheets automation workflows - data sync, task management, reporting dashboards, and multi-platform integrations

10 minutes
Advanced
Data & Reporting

Excel File Manipulation

Create, edit, and manipulate Excel spreadsheets programmatically using openpyxl

10 minutes
Intermediate
Data & Reporting

Scientific Pymc

Bayesian modeling with PyMC. Build hierarchical models, MCMC (NUTS), variational inference, LOO/WAIC comparison, posterior checks, for probabilistic programming and inference.

15 minutes
Advanced
Data & Reporting

Scientific Pymoo

Multi-objective optimization framework. NSGA-II, NSGA-III, MOEA/D, Pareto fronts, constraint handling, benchmarks (ZDT, DTLZ), for engineering design and optimization problems.

10 minutes
Intermediate
Data & Reporting

Scientific Scientific Schematics

Create publication-quality scientific diagrams using Nano Banana 2 AI with smart iterative refinement. Uses Gemini 3.1 Pro Preview for quality review. Only regenerates if quality is below threshold for your document type. Specialized in neural net...

10 minutes
Intermediate
Data & Reporting

Scientific Scientific Visualization

Meta-skill for publication-ready figures. Use when creating journal submission figures requiring multi-panel layouts, significance annotations, error bars, colorblind-safe palettes, and specific journal formatting (Nature, Science, Cell). Orchestr...

10 minutes
Intermediate
Data & Reporting

Scientific Scikit Learn

Machine learning in Python with scikit-learn. Use when working with supervised learning (classification, regression), unsupervised learning (clustering, dimensionality reduction), model evaluation, hyperparameter tuning, preprocessing, or building...

10 minutes
Intermediate
Data & Reporting

Scientific Seaborn

Statistical visualization with pandas integration. Use for quick exploration of distributions, relationships, and categorical comparisons with attractive defaults. Best for box plots, violin plots, pair plots, heatmaps. Built on matplotlib. For in...

5 minutes
Beginner
Data & Reporting

Scientific Shap

Model interpretability and explainability using SHAP (SHapley Additive exPlanations). Use this skill when explaining machine learning model predictions, computing feature importance, generating SHAP plots (waterfall, beeswarm, bar, scatter, force,...

10 minutes
Intermediate
Data & Reporting

Scientific Simpy

Process-based discrete-event simulation framework in Python. Use this skill when building simulations of systems with processes, queues, resources, and time-based events such as manufacturing systems, service operations, network traffic, logistics...

10 minutes
Intermediate
Data & Reporting

Scientific Statistical Analysis

Guided statistical analysis with test selection and reporting. Use when you need help choosing appropriate tests for your data, assumption checking, power analysis, and APA-formatted results. Best for academic research reporting, test selection gu...

10 minutes
Intermediate
Data & Reporting

Scientific Statsmodels

Statistical models library for Python. Use when you need specific model classes (OLS, GLM, mixed models, ARIMA) with detailed diagnostics, residuals, and inference. Best for econometrics, time series, rigorous inference with coefficient tables. Fo...

10 minutes
Intermediate

Browse all Data & Reporting playbooks →