By day 90, a marketing agency should have delivered a working system, not results. Expect a diagnosed revenue model, a live offer and message, tracking that ties spend to closed revenue, follow-up running automatically, at least one acquisition channel switched on, and one named person who owns the number. Leads are a month-four question.

That gap — between what owners expect at day 90 and what can honestly exist at day 90 — is where most engagements die. The owner hired a savior. The agency built a machine. Nobody agreed on the benchmark in between, so the first quiet month gets read as failure and the relationship ends right before the compounding starts.

What should exist by day 90, specifically?

Window What should exist How you verify it in 10 minutes
Day 0–15 A diagnosis: where revenue actually leaks (traffic, conversion, follow-up, close, or retention) Ask them to name the single biggest leak and show the number behind it
Day 15–30 Offer and core message rewritten and approved Read it. Would you buy from it?
Day 20–40 Tracking installed: lead source, first-touch timestamp, stage, closed amount, all in one place Pull one closed deal and trace it back to its original source
Day 30–45 Follow-up and speed-to-lead automation live Submit a test form yourself. Time the response
Day 40–60 First acquisition channel live with real spend or real volume Log into the ad account or the sending platform
Day 45–75 Reactivation run against the existing database Ask for the send count and the reply count
Day 60–90 A revenue report you can read without a translator, plus a named owner of the number One page. Pipeline created, cost, closed revenue

Seven things. None of them are "leads by Friday." All of them are checkable by you, personally, without trusting anyone's dashboard.

Why isn't "leads" the right day-90 test?

Because for most of the first 90 days there is no system running to produce them. Days 1–45 are installation. A channel that went live on day 50 has had five or six weeks by day 90, and in a business with a 60-day sales cycle, the first deals sourced by that channel close in month five.

This is the single most expensive misunderstanding in the agency market. Owners expect immediate returns, hit friction when the number doesn't move in week six, and exit — not because the model was wrong, but because building a revenue engine genuinely takes time. Our month-by-month guide to how long marketing takes to work lays out the full curve; the short version is that leading indicators belong to months 1–3 and lagging indicators belong to month 4 onward.

So judge months 1–3 on whether the machine got built. Judge months 4–6 on whether it produces.

What does a real day-15 diagnosis look like?

Here's what we actually ask for before we write a word of strategy: a CSV export of every lead from the last 12 months with five columns — source, created timestamp, first-contact timestamp, stage, closed amount. Read-only CRM access. The ad account, if there is one. Call recordings if they exist.

The most common thing that breaks at this step has nothing to do with marketing. It's that the first-contact timestamp column doesn't exist, because the website form posts to an inbox rather than to the CRM, so nobody can say how fast anyone responded to anything. You cannot fix conversion in a business that can't tell you when it called the lead back. That's why a follow-up audit comes before any spend, and why lead response time is usually the cheapest number to move in the first 30 days.

If an agency's kickoff doesn't request historical data in a form they can run math on, they aren't diagnosing. They're guessing, and then they'll bill you for the guess.

What if there's nothing to show by day 90?

Then you have real information, and you should act on it. The absence of these artifacts at 90 days is not a slow start — it's a structural problem. Watch for four patterns:

Reporting that never reaches a dollar. An industry survey distributed via Businesswire found that 71% of brands are frustrated trying to demonstrate marketing ROI. That frustration is usually manufactured by the reporting itself: impressions, reach, engagement, sessions — numbers that move without revenue moving. If the day-90 report can't connect to closed business, read why most marketing reporting doesn't prove anything and ask for the report you actually need.

Nobody owns the number. If the person on your calls changes twice in a quarter and none of them can state your CAC, the account has no owner. The question of who actually works on your marketing account is worth asking on day one, not day 90.

Everything is still a plan. Decks, roadmaps, brand documents, workshop outputs. A plan is not a system; that distinction is the whole game, and we've written about why a marketing plan isn't the same as a marketing system.

The work looks templated. Same funnel, same five emails, same three ads as every other client. Our guide to spotting cookie-cutter marketing before you sign covers the tells.

Multiply this across three vendors and the drag gets worse: vendor-management research puts coordination overhead at 8–15% of annual vendor spend in labor that never appears on an invoice, with businesses reporting roughly 30% higher total cost versus one integrated partner. We broke that math down in the hidden coordination bill.

What does good look like from the client's side?

"They know exactly how to connect marketing execution to real business outcomes." — Riggs Eckleberry, Chairman, OriginClear

That's the standard at day 90: execution connected to outcomes, not activity reported as progress. Nishant Bijani at Dialora.ai described the engagement as "a turning point in our revenue trajectory" — a trajectory, not a spike in week three.

We don't publish a client revenue percentage in this article, and that's deliberate. We haven't published one we can prove yet, so we don't print one. Any agency quoting you "347% growth" in a pitch deck with no named client, no baseline, and no time window is quoting a number you cannot check.

How do you write the 90-day benchmark into the agreement?

Put the seven artifacts above into the contract as a delivery schedule with dates, then attach two clauses that cost you nothing and save you a quarter:

  1. Asset ownership. Ad accounts, CRM, domains, and creative files in your name from day one. See who owns your marketing assets when you leave an agency.
  2. A 90-day review with a defined outcome. Not a check-in. A go/no-go against the artifact list, with an exit path if the list is empty.

Before signing anything, run the diligence checklist — and if you're still weighing models, the breakdown of alternatives to hiring a marketing agency covers what each option really costs.

What about days 91–180?

This is where the artifacts start paying. By day 120 you should see pipeline created you can attribute. By day 150–180, closed revenue traceable to a source, a CAC you trust, and enough data to know which channel to fund harder. That's when marketing ROI math becomes meaningful rather than theoretical.

If month six arrives with a built system and a flat number, that's a legitimate conversation about the offer or the market. If month six arrives and the system still isn't built, that's a different conversation entirely — seven signals owners miss until the number stalls covers what to do next.

The point of a 90-day benchmark isn't to catch anyone out. It's to replace hope with a checklist, so you stop gambling on marketing and start reading the installation like a build schedule. The same discipline applies before you sign anything, which is why it's worth knowing when to hire a marketing agency — and the revenue signals that say not yet. And if the checklist keeps coming back short, the next question is which role to fill first when the agency isn't delivering.


Avi Vatsa is CEO of Exchange Four Agency, where he leads the team that installs and runs AI-leveraged revenue systems for owner-led companies. His background spans law, technology, and marketing; he also co-founded Dialora, an AI voice-agent platform for automated lead capture and booking. (Marketer of the Day #1411)