Every ad optimization framework built in the last decade defaults to one question: which lever moves the metric. The metric is CPA, ROAS, CTR, or some weighted combination. The lever is a bid, a budget, a pause, a copy test. The answer is a recommendation. The recommendation is sometimes correct and frequently wrong.
It is wrong in a specific, diagnosable way: the framework has no model of what the account is for. It sees numbers. It does not see the business. When the metric-optimal action conflicts with the business-optimal action, the framework picks the metric and calls it a win.
mureo is built on the thesis that this is the central defect in AI-driven ad ops. This post is the long form of that thesis.
The metric-only trap
Consider a Google Ads account with one search campaign on brand terms and one on non-brand terms, both with identical this-week numbers:
| Brand | Non-brand | |
|---|---|---|
| Spend | $12,400 | $12,400 |
| Conversions | 310 | 78 |
| CPA | $40 | $159 |
A metric-only optimizer looks at the table and reaches for the non-brand pause button. The CPA is 4× higher. The conversions are 4× lower. The math is obvious.
The math is obvious and it is wrong.
The brand campaign defends traffic the brand already owns — searches for the company name. A meaningful fraction of those conversions would occur without the brand campaign running, through organic results on the same query. The incremental value of the brand spend is a fraction of the attributed value.
The non-brand campaign reaches users who have not yet heard of the brand. Every conversion from non-brand is incremental. The CPA is higher because the cost is the acquisition cost, not a re-contact cost.
Pausing non-brand and keeping brand flat is the metric-optimal move. It is also the move that, within three quarters, depletes the top-of-funnel pipeline the whole business depends on.
The metric-only optimizer cannot see this. The data the optimizer sees — the two rows above — is genuinely insufficient to make the decision. You need a field that does not appear in the ad platform’s reporting schema: what is this business’s growth goal, and how does it weight brand defense versus acquisition?
What STRATEGY.md encodes
mureo’s answer is that strategy context is not taste or boardroom
slides — it is a schema. Every mureo account is paired with a
plain-text STRATEGY.md whose top-level fields are:
- Persona. Who the campaigns are meant to reach. Age, role, problem, where they are in the awareness-consideration-decision journey.
- USP. The one sentence that says what this business does that the closest competitor does not. The agent quotes from it when drafting ad copy.
- Brand voice. Adjectives, forbidden words, tone examples. Passes into every creative-generation command.
- Goals. Ranked list: brand defense, acquisition, retention, retargeting, specific product launches. Each goal carries a weight and (optionally) a target metric that is conditional on the goal’s weight, not a universal target.
- Operation mode. Autonomous, supervised, advisory. Determines what the agent can do without a confirming prompt.
- Market context. Seasonal patterns, known competitor actions, known promotional calendars, attribution quirks specific to this account.
When a mureo workflow runs, it consults STRATEGY.md first. Only
then does it look at metrics. The output of /daily-check on the
account above would flag the non-brand campaign’s CPA but then cross-
reference the Goals section. If acquisition is the #1 goal, the
recommendation is “investigate non-brand delivery; do not pause.” If
retention and LTV maximization are the #1 goal, the recommendation is
“evaluate whether non-brand’s $159 CPA clears the retention-adjusted
LTV.”
Same two rows. Different correct answers. The difference is in the strategy context, not in the data.
A worked example
Account A: “Direct-to-consumer skincare brand, 18-month-old.”
STRATEGY.md → Goals: 1. Acquisition (weight: 0.7) 2. Brand defense (weight: 0.2) 3. Retention (weight: 0.1)
Target CPA (acquisition): $110 (derived from LTV $450, payback 4mo)Account B: “Enterprise B2B SaaS, 7-year-old.”
STRATEGY.md → Goals: 1. Brand defense (weight: 0.5) 2. Acquisition (weight: 0.3) 3. Reactivation (weight: 0.2)
Target CPA (acquisition): $1,400 (derived from ARR $48K, sales cycle 6mo, target CAC:LTV 1:4)Both accounts show the same metric row:
| This week | |
|---|---|
| Non-brand CPA | $159 |
| Non-brand conversions | 78 |
mureo’s output differs:
- Account A. Non-brand CPA is 1.45× target. With acquisition weighted at 0.7, this is meaningful overspend. Recommendation: reduce target CPC on the non-brand campaign by 15%, monitor for 5 conversion days (sample-size gate per mureo-learning rules), reassess.
- Account B. Non-brand CPA is 0.11× target. With acquisition at 0.3 weight and the target set against high-LTV enterprise sales, the non-brand is underspending. Recommendation: increase budget 25%, extend match types, monitor against the same sample gate.
The recommendations are opposite. The data driving them is identical. This is not a clever use of AI. It is the baseline competence a marketing team would expect from a junior media buyer who read the brief.
The category argument
The marketing technology vocabulary, as of 2026, is overloaded with the word “AI” and empty of the concept that made this argument possible: that strategy is structured data, not vibes. “Strategy- driven” gets used by SaaS dashboards to mean “we added a goals dropdown.” It has to mean something sharper than that to be worth saying.
The mureo claim is concrete. It is:
- Strategy context is a plain-text, human-editable, diff-able artifact. It is not a dropdown.
- Every workflow binds to it at the top of its execution. It is not a loose “remember my goals” nudge in system prompts.
- Recommendations must reference it. Commands that cannot
justify their output against a
STRATEGY.mdfield are recast as “monitor” rather than “act.”
This is what separates mureo from any other AI-for-marketing stack shipping right now. Everything else is building smarter automation on top of the same narrow signal. mureo is widening the signal.
If that reframe is the one useful thing mureo contributes to the category, then the rest of the framework — the security layer, the anomaly detector, the rollback gate — is implementation detail for a single idea: an agent should optimize for the business’s strategy, not for whichever metric happened to land in its context window.
Practical implication
For an operator evaluating mureo against an alternative: the question is not “does it automate X faster than Y.” The question is “does it change the decisions I make on weeks where the metric and the strategy conflict.” If the answer is no, the strategy layer is ornamental. If the answer is yes, everything else is just plumbing.