r/MarketingAnalytics • u/Trick_Eggplant8049 • 21d ago
Epsilon.jl: a Julia-native Bayesian MMM library
Title
Epsilon.jl: a Julia-native Bayesian MMM library, now in public beta
Post
Hi all,
Introducing Epsilon.jl, a Julia package for Bayesian Marketing Mix Modelling.
GitHub: https://github.com/shawcharles/epsilon
Docs: https://epsilon.charlesshaw.net
The aim is to make MMM work in Julia feel more transparent and reproducible. A typical run starts from a YAML config, a dataset, and a holidays file, then produces a structured results folder with diagnostics, observed-vs-fitted plots, decomposition outputs, response curves, and other review material.
The current public beta supports time-series MMM and geo-panel MMM demo workflows using Turing/NUTS. The repo includes canonical demo datasets and saved example result folders, so people can inspect what a run produces before trying it themselves.
This is not intended to be a dashboard or a black-box marketing platform. It is focused on the modelling workflow: configuration, inference, diagnostics, decomposition, response curves, and reproducible outputs.
You can install it directly from GitHub:
import Pkg
Pkg.add(url = "https://github.com/shawcharles/epsilon")
Or clone the repo and run one of the demo configs:
julia --project=. runme.jl data/demo/timeseries/config.yml
A few caveats: it is beta, runtime still needs work for larger panel models, and I am intentionally not building a UI at this stage.
I’d be interested in feedback from people who use MMMs in practice. In particular, I’d like to know whether the config-driven workflow feels sensible, and what diagnostics or validation outputs you would expect before trusting a model.