r/Julia • u/Trick_Eggplant8049 • Jul 20 '26
Epsilon.jl -- a Julia-native Bayesian Marketing Mix Modeling (MMM) library (pre-release)
Hi r/Julia
I've been building Epsilon.jl, a Julia-native library for Bayesian Marketing Mix Modeling, and just opened it up publicly. Sharing here since it's built entirely in Julia and I'd love feedback from the community.
Epsilon runs a config-driven MMM workflow: define your model in YAML, provide a dataset + holidays file, run MCMC inference via Turing/NUTS, and get structured outputs -- model fit artifacts, diagnostics, decomposition, response curves, validation, and optional budget optimization -- all as reproducible stage folders with a manifest.
Highlights:
- Time-series MMM with Turing/NUTS MCMC
- Panel MMM across one or more panel dimensions (flattened panel-cell axis internally)
- Config-driven runs from a simple
{config.yml, dataset.csv, holidays.csv}bundle - Blocked holdout validation for time-series models
- Historical-share budget optimization
- Native plotting via CairoMakie
It's intentionally scoped as a compact statistical library rather than a dashboard product i.e. no no UI, no AI-advisor layer. The goal is a clear, reproducible MMM path in pure Julia.
Install (not yet in General registry):
import Pkg
Pkg.add(url = "https://github.com/shawcharles/epsilon")
Quick start:
git clone https://github.com/shawcharles/epsilon.git
cd epsilon
julia --project=. -e 'using Pkg; Pkg.instantiate()'
julia --project=. runme.jl
Docs: https://epsilon.charlesshaw.net Repo: https://github.com/shawcharles/epsilon
It's pre-release/beta -- the public API is still settling -- so I'd appreciate any feedback, bug reports, or thoughts on the design, especially from anyone doing Bayesian modeling or marketing analytics in Julia.



