Deduplicating Joins Across Citation, Referral, and CRM Data
Website owners comparing citation reports with referrals and customer relationship management (CRM) outcomes need to keep the three record types separate. A…
For a local business, a search impression, a website visit, a phone call, and a qualified enquiry are different events. Google’s Business Profile, Search Console, website analytics, phone records, and a customer relationship management system (CRM) each record a different part of the customer journey. A qualified enquiry is a contact that meets criteria the business sets, such as needing a service it provides and being in its service area.
Measure those events separately, then connect them where the available records allow. This shows whether local search is bringing visibility, recorded visits, real contacts, and suitable prospects without treating a button click as a customer.
Use Google Search Console to see how often Google showed your website in search and how often people clicked through. Its Performance report includes impressions, clicks, click-through rate, and average position, with filters for queries and pages. Review the pages that matter to local customers, such as service, location, and contact pages, and compare the same date ranges when assessing a change. Search Console’s Performance report measures search activity, not enquiries or sales.
A click in Search Console is not the same as a session in website analytics. A click records an interaction with a Google result; a session records website activity that the analytics tag captured. The totals need not match because the tools count different events and apply different reporting rules. Search Console also groups some data by canonical URLs, the main page addresses Google selects when several URLs point to similar content. Treat a substantial difference as a reason to check dates, pages, and tracking, not as proof that one tool is wrong.
To identify visits from a Google Business Profile, add consistent campaign parameters, commonly called UTM parameters, to the profile’s website link. These are URL labels that help Google Analytics classify incoming visits. Google’s URL builder guidance explains how to use source, medium, and campaign values. If your business has several locations, give each profile a different campaign value and use the same capitalization each time.
Compare profile website clicks with Analytics sessions attributed to those tagged links, but do not expect a one-to-one match. A profile click records someone selecting the link. Analytics records a visit only when its measurement code captures activity on the site. Redirects that remove the parameters, consent choices, or a broken analytics tag can create gaps. Check that the profile link reaches the right page and that the parameters remain in the address after any redirect.
Google Business Profile reports “calls” when someone clicks the profile’s call button. That count does not confirm that the call connected, was answered, or came from a suitable prospect. The same distinction applies to a phone number link on a website: an analytics event for a mobile tap records the tap, not the resulting conversation. Google describes these profile measures in its Business Profile performance definitions.
To see what happened after people clicked, compare profile call-button clicks and website phone-link clicks with the calls your phone system recorded. When practical, record whether someone answered each call, whether the caller was a new or existing customer, and whether the caller needed a relevant service or was a poor fit. A phone log or CRM can show what happened on calls, while a click counter only shows that someone clicked.
Call tracking can link calls to marketing sources. Check which calls it records and how it assigns them to a source. Google Ads call reporting, for example, covers calls associated with Ads features and uses configurable rules for counting call conversions. It does not automatically attribute organic local-search calls. Google’s call reporting documentation also shows why call totals and call conversions can differ: a call can be recorded but fail a configured duration threshold. Call length is only a rough signal of quality. A short call can be a good lead, while a long one can be support or spam.
Decide which enquiries count as qualified before comparing months or locations. A business might count an enquiry as qualified when the person needs a service it offers, is within its service area, and is a potential new customer. Those rules depend on the business; record the reason for qualifying or rejecting a contact so staff apply them consistently.
Keep four outcomes distinct: a form was submitted, the details were valid, the enquiry met the qualification rules, and the lead advanced to a later sales stage. A form event alone does not establish the last three. In Google Analytics, measure the specific successful form submission you care about, rather than treating every form-related interaction as a lead. Google explains how to measure key events and check that the intended event is being recorded.
For calls, use the call log or CRM to record the contact’s outcome. Keep the source as “known,” “inferred,” or “unknown” when the evidence supports only that level of certainty. A caller’s answer to “How did you find us?” is useful, but it is not equivalent to a tracking record.
A useful report shows each step: how often people saw your business in search, what they did on your profile or website, whether they contacted you, and whether their enquiry qualified. For example, rising Search Console clicks alongside more tagged website sessions is consistent with increased measured visits. If qualified enquiries stay flat, the visit increase has not yet shown a corresponding increase in qualified leads. Check the forms, call outcomes, service fit, and source records before drawing a conclusion.
When you report a rate, state which numbers you divide to calculate it. A website enquiry rate might be valid website enquiries divided by measured website sessions. A lead qualification rate might be unique qualified enquiries divided by unique valid enquiries. A call qualification rate might be qualified new-business calls divided by recorded new-business calls. These rates reflect choices your business makes for reporting; Google does not define them as standard metrics. Do not compare rates with different denominators as if they measured the same thing.
Avoid adding profile call clicks, website phone taps, recorded calls, and CRM contacts into one “lead” total. One person can produce several events, and each system observes a different part of the journey. If you cannot deduplicate contacts reliably, report the figures as separate event counts.
Also account for advertising. Business Profile performance can include activity from organic search and Google Ads, so profile actions alone do not isolate organic SEO results when ads are running. Search Console’s average position is an average of recorded positions, not a fixed rank for every person or location. Watch impressions and clicks alongside position, and annotate reporting periods when you change tracking, pages, profile details, or advertising. Google notes that connecting a performance change to one specific site change can be difficult in its guidance on evaluating search performance.
Test the path a customer takes. Click the website link on the profile and confirm that it lands on the intended page with its campaign parameters intact. Submit a test form and verify that the successful submission appears in Analytics. On a phone, tap the website number and confirm it opens the correct number. If you use call tracking, place a test call and verify that it reaches the business and appears under the expected source.
Then review a sample of forms and call outcomes, such as whether each call was answered, missed, or qualified. Confirm that staff use the qualification rules consistently and that spam, duplicates, existing customers, and missed calls do not inflate qualified-lead counts. If Search Console clicks rise while Analytics sessions do not, check the date range, landing pages, consent configuration, tags, and redirects before concluding that visits failed to increase.
No measurement setup captures every path perfectly. Someone can search on one device and call later from another, or remember the business without a trackable click. Report gaps instead of assigning every contact to SEO. A rise in enquiries after an SEO change is evidence of a trend, not proof that the change caused it; demand, seasonality, advertising, competitors, and measurement changes can also affect the totals.
Google Search Console’s Generative AI performance report provides visibility data for AI Overviews and AI Mode. Those impressions show that a site appeared in those search features; they do not show that a person visited, called, or qualified as a lead. Google’s report documentation describes the report’s coverage. If the data is relevant to your business, connect it to the same downstream visit and contact measures rather than counting an AI impression as an enquiry.
Give Vroni a GitHub issue, bug report, spec, or rough idea. It reads the repo, plans the change, writes code, runs checks, and works toward a review-ready pull request.
Take a look at vroni.com