The Quattr Method
L2 · Demand modeling, SEO opportunities from your own first-party demand
Striking distance and gaps, computed from first-party ground truth.
Every content plan has one term in it that nobody believes in. It got on the list because a database said the volume was large. It stayed because nobody had a better argument than the database.
L2 · Demand modeling is the lever that decides where every other lever points. It picks opportunities out of your own demand. That sounds obvious until you notice how much of the industry picks them out of somebody else's keyword database.
Its cross-map row is busy. It is primary on R2 · Retrieved, the question of whether you enter the consideration set for the demand that matters. It is secondary on R3 · Referenced, whether you are the source answers use, and on R5 · Rewarded, whether any of it turns into traffic, conversions, revenue, counted in the goals your team named in your analytics tool. Aim touches everything.
First-party demand beats a borrowed universe
The raw material is demand your site already earns: the queries you get impressions for, organized by an intent model built in your business language and refreshed on a schedule.
A borrowed keyword universe describes a market in general. Your impression data describes the market that can actually find you. That difference compounds. Every downstream artifact, the refresh backlog, the net-new briefs, the linking targets, inherits its honesty from the demand model it was selected out of.
It also changes what counts as an opportunity. A term with modest volume in a database can top your list, because your site already earns impressions for it. A five-figure head term the same database recommends may be demand your domain will never realistically see. Ground truth reorders the map.
How do you size a quick win?
With your own click-through curve, rather than an industry average.
The signature read here is striking distance: keywords sitting just off page one, ranked by what a rank improvement would be worth to you. The sizing fits your site's own click-through rate by position, segmented branded against non-branded. A generic curve prices your opportunities at somebody else's traffic.
Then it applies an AI-Overview haircut. An AI Overview is the AI-written block Google shows on top of a classic results page, and a page where that block crowds the top pays less for the same position. What comes out is a ranked list with modeled upside, labeled as modeled.
Reliability rides inside the fit. Positions with too little data behind them carry a low-confidence flag rather than quiet trust, and the check repeats on a schedule because striking distance moves as your rankings do. The striking-distance-sprint skill runs it end to end, a packaged analysis you run by name in your assistant.
Ask it yourself
What are our quickest-win opportunities right now, sized with our own CTR curve and non-branded only?
A gap is demand somebody already proved
The second read is the gap: demand where competitors rank and you do not, or where AI answers cite them and never you. Answer engines like ChatGPT, Perplexity and Gemini answer a question directly and cite their sources, so their gaps read much the way rank gaps do. A gap is evidence that the demand pays, gathered at somebody else's expense.
Gap reads honor the same evidence bar as everything else here. A competitor's rank is a fact. Their strategy is a guess. The check reports the first without inventing the second.
Both reads default to non-branded. The method reports branded demand separately and never quietly folds it in, because an opportunity list padded with your own name is a mirror rather than a map.
The same logic runs on the AI side, where prompt coverage gaps play the role rank gaps play in search. One demand model feeds both surfaces, which keeps the two opportunity lists comparable instead of competing.
The workflow that does this: Keyword coverage gap →
Candidates, never conclusions
Everything this lever produces is a ranked candidate list for your judgment, with modeled upside labeled as modeled. When two things move together the method reports it as something to test, not something proven. The article on correlation and causation carries that rule in full, and the same restraint applies to a modeled number.
Modeled upside says where to look first. Whether a candidate becomes a refresh, a brief or a linking target is a decision the levers that execute it own. That framing stops the model's confidence from passing for a forecast.
Some of the best candidates serve demand the keyword tools barely register. Your own impressions say the demand exists. The tools describe an average market, and you do not operate an average market.
The model stays current the same way. A standing refresh keeps your intent taxonomy accurate and the checks re-run against it continuously, so the list tracks how your demand actually shifts rather than how it looked at onboarding. Refresh and net-new content both spend from the list this lever writes.
See also: why two things moving together is a candidate, not a conclusion →