MDU Engine is an open-source decision-support system that helps marketers, analysts, and founders decide whether to SCALE, HOLD, or REDUCE ad spend across Meta Ads and Google Ads using validated daily performance data.
The engine prioritizes decision safety, deterministic logic, transparency, explainability, and auditability over black-box automation.
https://mdu-engine-satish-saka.streamlit.app/
- Normalizes daily ad exports from Meta Ads and Google Ads
- Validates data quality before any decision
- Runs deterministic Monte Carlo simulations
- Reports explicit decision confidence and downside risk
- Produces SCALE / HOLD / REDUCE recommendations
- Provides human-readable explanations
- Supports portfolio-level reallocation
- Logs decisions for audit and review
- ❌ No automated budget execution
- ❌ No ad platform integrations
- ❌ No forecasting or prediction claims
- ❌ No black-box AI logic
- ❌ No financial advice
MDU Engine is advisory only.
This release defines the first stable public contract of MDU Engine.
- Strict input CSV validation
- Deterministic Monte Carlo via seeded randomness
- Explicit confidence and downside risk
- Explainable outputs
- Advisory-only recommendations
- Breaking changes only in v2.0.0+
MDU Engine guarantees:
- No decision without valid daily data
- No hidden thresholds
- No mutation of user data
- Full traceability
- Versioned engine and rulesets
A decision is blocked if:
- Fewer than 7 daily rows
- Data is not segmented by Day
- Spend, conversions, or dates are missing
- Aggregated / summary exports are uploaded
When blocked:
- Action: HOLD
- Confidence: n/a
- Budget Change: 0%
- Simulations: Not executed
This behavior is intentional.
- Same input → same seed
- Same seed → same Monte Carlo output
- Every decision logs engine version, ruleset version, seed, risk, and confidence
- Upload CSV
- Detect platform & normalize
- Validate schema & data window
- Run Monte Carlo simulation
- Apply decision rules
- Generate explainability & report
- Optional portfolio reallocation
samples/ ├── meta_ads/ │ └── meta_sample_daily.csv └── google_ads/ └── google_sample_daily.csv
Sample files always pass validation and produce deterministic results.
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
streamlit run app.py
## ⚠️ Production Use Disclaimer
MDU Engine is a decision-support system.
• It does not execute changes
• It does not connect to ad platforms
• It does not spend money
• It does not provide financial advice
All outputs must be reviewed by a qualified human decision-maker before being acted upon.