The organic chart was green and the enquiry form still sat at fourteen submissions for the month.

That is the meeting we keep walking into. Search Console looks healthy, the slide deck has a traffic screenshot, and sales still cannot point to a call that started on organic. Measurement failed before the work did. Sessions moved. The pipeline did not.

We run British-led SEO from the Philippines for teams who already have enough charts. The useful question is never “did traffic go up.” It is whether a form, a booked call, or a product enquiry can be traced back to search without a story attached.

Traffic that never reaches a form

A session is a person who loaded a page. An enquiry is a person who asked to be contacted. Mixing those two is how SEO gets praised in month three and questioned in month six.

We see it on migrations, on content programmes, on local work that ranks for the town and never fills the contact form. Rankings can be real. The measurement layer is still counting the wrong object.

If the board only sees users and sessions, every technical fix looks like a win and every quiet week in the CRM looks like a failure. Neither reading is honest.

Start from the enquiry, then walk backwards through landing pages, queries, and the template that actually collected the lead. Traffic is a supporting number after that walk, not the headline.

Define the enquiry before you open Analytics

Write the definition on one line before anyone logs in. For a services site it is usually a form submit, a click-to-call, or a calendar booking that sales will own. For a catalogue it is often an add-to-enquiry, a quote request, or a checkout start that sales still has to close.

If two people on the same team cannot say that sentence the same way, the dashboard will lie even when the tracking is clean.

We ask marketing leads to sit with sales for one week of call notes. Mark which conversations started from organic search. Ignore the ones that started from a paid click, a partner intro, or a cold outbound. The leftover pile is the SEO enquiry set. Everything else is noise we refuse to put on an SEO slide.

Once that set exists, name the events in the property to match it. Do not reuse “generate_lead” for a newsletter signup and a tender download. Sales will not treat those as the same object, so neither should we.

Search Console is not the sales pipeline

Search Console tells us queries, pages, impressions, and clicks. It does not tell us who filled a form. Treating a click as a lead is how screenshots replace measurement.

We still live in Search Console every week. It is the only honest view of what Google actually served. We use it to see which URLs collect the clicks that later become enquiries, and which URLs collect clicks that bounce before the form.

The join happens outside Search Console. Query to landing page. Landing page to form or call event. Event to CRM record or a logged sales call. If any join is missing, we stop calling the traffic “leads.”

A page can win impressions on a head term and still be a dead end. Another page can sit on page two for a messy long-tail and quietly feed half the month’s calls. Search Console without the enquiry join cannot tell those two pages apart.

Key events that actually mean a lead

GA4 will count whatever we mark. That is the trap. A scroll, a file download, and a contact submit can all look like success if someone ticked the wrong box.

We only promote an event to a conversion when it matches the enquiry definition sales already agreed. Google’s own documentation on GA4 key events is the setup we follow so a form submit is marked once, named clearly, and not double-counted with a thank-you page view.

Then we test it. Submit the form on staging. Confirm the event fires once. Confirm the thank-you view does not fire a second lead. Confirm the CRM or inbox actually received the row. If the event fires and sales never sees a name, we do not report it.

Phone clicks need the same discipline. A tap on a tel: link is not a conversation. We still count it when the site is mobile-heavy, but we pair it with call tracking or a simple “how did you hear about us” on the first sales call. Unverified taps stay in a separate column.

Forms, phone clicks and the calls that follow

The form is the object. Fields, required states, spam, and the thank-you URL all change the count.

A five-field form with a working inbox is an enquiry machine. A twelve-field form with a broken mailer is a traffic grave. We have watched organic land on a contact template, fill it, and vanish because the notification went to a leaver’s mailbox. Traffic screenshots never catch that.

We check the form the way a fitter checks a joint. Does it submit. Does the event fire. Does the payload include the landing page and the gclid or gbraid when paid is in the mix, so organic is not blamed for a paid lead. Does sales log the source on the first call.

When the site is a shop, the enquiry is often not a contact form at all. It is a quote, a WhatsApp click, or a checkout that still needs a human. That is why we keep ecommerce seo services on a different measurement map: product-templated landing pages, faceted URLs, and add-to-enquiry events that a services site never has.

Same discipline. Different objects. Do not paste a B2B form report onto a catalogue and call it seo measurement.

How we score a month without a vanity chart

A month we can defend has four columns, not one screenshot.

Organic enquiries: the count of form submits, verified calls, or quote requests that match the definition.

Assisted organic enquiries: people who used search, left, and converted on direct or branded later. We keep this column honest and smaller than the first.

Queries and URLs that produced those enquiries: pulled from Search Console joined to landing-page data, not guessed from “we rank for X.”

Work shipped: templates fixed, titles shipped, internal links, crawl waste removed, content that targeted a real enquiry query. If nothing shipped, we do not credit a lucky week of calls to SEO.

That is seo leads not traffic. The traffic number can still sit in an appendix. It does not open the pack.

We also kill the habit of screenshotting a 28-day users chart on a Sunday night. Weekend traffic on a B2B form site is usually junk. Score the enquiry week against the sales calendar, not against a default Analytics range.

When the screenshot is still useful

Traffic is not worthless. It is a diagnostic.

If enquiries fall and clicks fall on the same URLs, we look at rankings, coverage, and intent mismatch. If enquiries fall and clicks hold, we look at the form, the offer, and the page below the fold. If enquiries rise and clicks are flat, we look at better matching queries and a template that finally asks for the right thing.

The screenshot becomes a check, not a trophy. We will still pull it when a coverage drop or a migration needs a before-and-after. We will not send it as the monthly SEO result.

Marketing leads who are tired of traffic screenshots usually already feel this. The job is to give them a pack sales will not laugh at.

Building a loop the next person can inherit

Measurement that lives in one person’s head dies at handover. We write the enquiry definition, the event names, the exclusions, and the CRM field into a short note the next marketing lead can open.

That note lists which events are key, which are only diagnostic, and which thank-you URLs must never be counted twice. It lists the Search Console property, the filters we apply, and the sales owner who confirms a call was organic.

Our seo command centre work is built around that loop: technical, on-page, content, and local tasks tied to the same enquiry objects, not a separate traffic KPI that nobody in sales recognises.

White-label and in-house teams both need this. An agency slide that only shows sessions will get challenged the first time a director asks for leads. An in-house deck that only shows sessions gets the same question, just later.

AI search work sits in the same loop. If a citation or an AI overview mention cannot be joined to a form or a call, we report it as visibility, not as an enquiry. Different object. Different slide.

What we inspect before we change the work

A scoped audit for this problem is not a 90-page crawl dump. We look at the form, the events, Search Console, and a sample of sales calls.

Form: action, thank-you, spam rate, required fields, and whether the landing page is in the payload.

Events: names, duplication, and whether newsletter joins were marked as leads.

Search Console: queries that already convert versus queries that only inflate clicks.

Sales calls: two weeks of notes, organic versus everything else, and the pages people mentioned on the call.

Migrations and template rebuilds get extra attention. A new theme that drops the form event will look like an SEO collapse. It is a tracking break. We have seen organic “fall off a cliff” for ten days because a developer renamed a thank-you slug and nobody updated the event.

Local work gets a NAP and Google Business Profile check against the same enquiry set. A profile that ranks and a site form that is broken is still a measurement failure.

Decide the next useful step

If the form is dark, fix the form before we write another page. If the events are wrong, fix the events before we argue about content. If the events are clean and enquiries are still thin, then we look at intent, templates, and the queries Search Console is already sending that never reach a submit.

Write the one-line enquiry definition this week. Pull fourteen days of form rows and fourteen days of Search Console landing pages. Draw the join on a single sheet. If the join cannot be drawn, measurement is the job, not another traffic screenshot.

When that join exists and the numbers still do not match the work you think shipped, a scoped audit is the next useful step. Send the enquiry definition, the event list, and two weeks of sales-call notes. We will tell you whether the gap is tracking, templates, or demand - and we will not open with a users chart.