A boundary hit is a question, not a verdict
When a selected Robyn solution places a parameter at the edge of its allowed range, the result deserves investigation. It might reflect a real preference under the model, a restrictive bound, weak information or compensation for another misspecification. It does not automatically mean that the bound should be widened.
- Record the search bounds
- Find boundary hits
- Challenge the input story
- Compare a justified rerun
Keep the original configuration, seed, data version and model identifier before changing anything. The Robyn walkthrough covers execution; this review focuses on deciding whether a rerun has an evidential justification.
A reproducible workflow makes data checks, modelling assumptions and decision sensitivity visible. The mmm tools, code and platforms learning path connects this idea to the assumptions, practical checks and next steps.
To work through the connected decisions, read Adstock half-life: convert decay into a time assumption and Robyn model selection: review the Pareto candidates.
Check what the parameter means in your configuration
Adstock and saturation parameters depend on the transformation family and its implementation. A numerical value from one family should not be compared directly with a different family's parameter. Confirm the installed package's definitions and the input units before labelling a value implausible.
For example, geometric decay of 0.8 leaves 80% of a one-period impulse in the following period before any normalisation. If periods are weeks, that is a weekly persistence assumption. The same number on daily data represents a different elapsed-time pattern. The adstock guide makes the distinction visible.
Work through a half-saturation boundary
Suppose a hypothetical channel is observed only between £8,000 and £12,000 weekly spend, while a fitted saturation parameter repeatedly reaches its upper bound. The data may support a nearly linear response over that narrow range. Increasing the bound could change the extrapolated curve dramatically without materially improving evidence inside the observed range.
Plot observed spend alongside candidate response curves. Compare fit and implied contributions within the observed range, then separately show the range used by the allocator. A recommendation to spend £40,000 needs evidence beyond a curve that fits £8,000 to £12,000.
Make one justified change at a time
Check missing promotion controls, correlated channel schedules, data breaks and outcome definitions before tuning the search space. Record the reason for each proposed bound, using prior evidence or a plausible operational mechanism. Run sensitivity comparisons rather than searching until a familiar ROI appears.
A useful review table contains parameter name, original bounds, selected value, fraction of candidates near the boundary, business interpretation and proposed action. Keep rejected configurations too. This prevents the final report from concealing how many alternatives were tried.
Compare the rerun's future-period performance, decomposition, experiment agreement and budget recommendation. A better numerical objective alone is insufficient. If several plausible bounds produce materially different decisions, report the decision range and consider an experiment. The saturation guide explains why extrapolation is often the most consequential uncertainty.
Sources and further practice
This article’s worked example is illustrative, not a measured client result. Use the linked methodology to check the assumptions before applying it.