The same words, three different designers
Motif runs every prompt on multiple models, and the run logs show the same pattern every time: identical brief, recognizably different output. One model inflates — longer copy, more sections, bigger claims. One deflates — literal, minimal, takes every 'optional' at its word. One improvises — holds structure but decorates beyond the brief. This is not noise; it is each model's probability distribution showing its favourite moves, and a brief that does not anticipate the drift gets drifted.
- The inflator wants more: cap it with explicit counts ('exactly three tiers', 'no more than two sentences per card') and with negative space ('no extra sections beyond the block list').
- The deflator wants less: feed it obligations, not options — 'the hero must contain: a headline, a subline, and one button' beats 'consider a hero with some copy'.
- The improviser wants freedom: pin the palette and the never-list, then let it decorate inside the fence — improvisation inside constraints is where the best output comes from.
- Every model has a favourite failure: one loves generic praise copy, one loves gradients, one loves 3-column layouts for everything. Your never-list is a per-model conversation, and it takes two runs to learn.
Brief: "a calm focus timer landing page, paper + ink + one green"
Model A -> added a purple gradient hero (never-list missing)
Model B -> built it, ultra-minimal, no CTA above the fold
(obligations missing)
Model C -> structure perfect, copy full of "unlock your focus"
(copy obligations missing)
One brief, three diagnoses, three different fixes.Drift is stable — use it
Model behaviour is consistent enough to plan around: once you know which model inflates, you route the copy-heavy briefs elsewhere or pre-load the caps. The professional move is a per-model brief header — one paragraph of 'this model tends to X, so this brief does Y' — and Motif's own prompts carry model-specific run notes for exactly this reason. The brief is not finished when it reads well; it is finished when it survives the model you actually run.