# Lead Recorder > Lead Recorder matches every call, form submission, and booking on a website to the exact ad, search term, or post that produced it, using one JS snippet and first-party data. No GTM setup, no event tracking knowledge required. Built for small businesses, agencies, contractors, and web designers who want to know where their leads actually came from without hiring someone to configure Google Tag Manager. Flat pricing, no usage fees. It doesn't do general web analytics. It doesn't track page views or build funnels. It answers one question: which source produced this specific lead. This file concatenates the full markdown text of every doc and blog post, for single-request ingestion. For the full page index (including marketing and comparison pages not reproduced here), see [llms.txt](https://www.leadrecorder.com/llms.txt). # Documentation ## Getting started with Lead Recorder How the Lead Recorder snippet works and what you need to start tracking leads on your website. URL: https://www.leadrecorder.com/docs/getting-started Lead Recorder adds a small script to your website that captures where every enquiry, booking, and form submission came from: organic search, paid ads, direct traffic, or referral. ### How it works 1. A visitor lands on your website from Google, a Facebook ad, a referral link, etc. 2. The snippet captures the traffic source and stores it in the visitor's browser. 3. The visitor fills out a form, taps your phone number, books a call, or makes an enquiry. 4. The snippet logs the lead and its source to your dashboard within a few seconds. ### What you need - A Lead Recorder account (free to start) - Access to add a script tag to your website - A thank you page, if you're using an external booking tool (Calendly, Acuity) rather than an on-site form — see below ### Step 1: Copy your snippet Log in to your Lead Recorder dashboard, select your site from the left sidebar, and copy your tracking snippet. ``` ``` ### Step 2: Add the snippet to your website Paste the snippet inside the of every page on your website. See the platform guides in this help centre for WordPress, Webflow, Squarespace, and more. ### Step 3: Set up a thank you page (only if you're using an external booking tool) On-site forms are picked up the moment they're submitted, redirect or not, so most sites can skip this step. If you're using Calendly, Acuity, or another external booking tool, create a dedicated page like yourwebsite.com/thank-you, install the snippet on it, and point the booking tool's confirmation redirect there. See "What is a thank you page and why do I need one?" for the detail. ### Step 4: Verify it's working Submit a test form on your website, or make a test booking if you're using an external booking tool. A new lead should appear in your dashboard within a few seconds. > Tip: No lead showing up for a form? Check the snippet is installed on the page the form lives on. No lead showing up for an external booking tool? Check the confirmation redirect actually points at your thank you page and that the snippet is installed there too. --- ## How to find your Lead Recorder snippet Find your site's unique Lead Recorder tracking snippet in the dashboard sidebar, copy it, and confirm installation with the green Installed indicator. URL: https://www.leadrecorder.com/docs/find-your-snippet Each site you add to Lead Recorder has its own tracking snippet. Here's where to find it. ### Steps 1. Log in at leadrecorder.com/login. 2. In the left sidebar, click the site you want to install the snippet for. 3. Your snippet is shown at the top of the dashboard. It looks like a script tag. 4. Click Copy to copy it to your clipboard. ``` ``` > Note: Every site has a different key in the URL. Copy the snippet from the correct site before installing it. ### Multiple sites If you manage multiple websites, each one has its own snippet. All your sites are listed in the left sidebar. Select the right one before copying. > Tip: The dashboard shows a green Installed indicator once it detects the snippet is live on your site. --- ## What is a thank you page and do I need one? A thank you page isn't needed for on-site forms, but it's how Lead Recorder detects bookings made through an external tool like Calendly. URL: https://www.leadrecorder.com/docs/what-is-a-thank-you-page A thank you page is the page your visitor lands on after booking an appointment through an external tool, or making an enquiry that doesn't happen directly on your site. ### Do you actually need one? Not for on-site forms. The snippet listens for the form's submit event directly, so it logs the lead the moment someone hits submit, whether your form redirects afterward or just shows a success message in place. Contact Form 7, Gravity Forms, WPForms, Typeform, Jotform, and most others all work this way with no extra setup. A thank you page matters for external booking tools, Calendly, Acuity, or similar, where the actual booking happens on someone else's site. Lead Recorder can't see inside that flow directly, so it watches for the visitor landing back on your thank you page afterward as the signal that a booking happened. ### How to create a thank you page 1. Create a new page on your website, e.g. yourwebsite.com/thank-you. 2. Add a short message. Something like: Thanks for booking in. We'll see you then. 3. Install the Lead Recorder snippet on this page. The easiest way is to install it site-wide so it covers every page. 4. Configure your booking tool to redirect to this URL after a booking is confirmed. ### What goes on the thank you page? Keep it simple: a headline, a short message, maybe a link back to your homepage. The page's main job is to be a URL that only gets visited after a booking is confirmed. > Tip: You can use the same thank you page for multiple booking tools or enquiry types. The traffic source is captured regardless of which one the visitor came from. ### Multiple thank you pages If you have different enquiry types booked through different tools, separate thank you pages let you see which type of lead came in at a glance. --- ## How to manually log a phone call lead How to add a lead to Lead Recorder when a customer calls instead of filling out a form. URL: https://www.leadrecorder.com/docs/manual-phone-call-lead Not every lead comes through a form. When someone calls you directly, you can log it manually so it sits alongside your other leads. ### How to log a phone call lead 1. Open your Lead Recorder dashboard and select the site. 2. Click the Add lead button (or the phone icon) near the top of the leads list. 3. Enter the caller's name and any details you have: phone number, notes. 4. Select the lead source if you know it. If they said they found you on Google, pick Organic. 5. Click Save. > Note: Manually logged leads show a phone icon so you can tell them apart from automatically tracked form submissions. ### Tips - Ask callers how they found you and log the source for accurate attribution. - Log the call right after it ends while the details are fresh. - Add notes about the conversation so you have context for follow-up. > Tip: If you use a call tracking number like CallRail, you can still log the lead manually and attribute it to the correct campaign. --- ## Understanding lead sources (Organic, Paid, Direct, Referral) What each lead source means and how Lead Recorder works out where a lead came from. URL: https://www.leadrecorder.com/docs/understanding-lead-sources Every lead in your dashboard has a source: the channel that brought that visitor to your website. Knowing this shows you which marketing is actually generating enquiries. ### Source types #### Organic The visitor found you through an unpaid search result, like Google or Bing. This is your SEO traffic. #### Paid The visitor clicked a paid ad: Google Ads, Facebook Ads, Instagram Ads, etc. For Google Ads, Lead Recorder detects the gclid/gbraid click ID automatically. For Meta (Facebook/Instagram), it detects the fbclid click ID the same way, no UTM parameters needed. UTM parameters (utm_medium=cpc or utm_medium=paid) work too and are the only option for ad platforms without their own click ID, but they're not required for Google or Meta. #### Referral The visitor came from a link on another website: a directory, a partner site, a social media post. Lead Recorder records the referring domain so you can see exactly which site sent them. #### Direct The visitor typed your URL directly, used a bookmark, or came from a source that didn't pass referrer information. Many email clients fall into this bucket. ### How Lead Recorder works out the source 1. When a visitor first arrives, the snippet reads the UTM parameters in the URL and the HTTP referrer. 2. That source is saved in the visitor's browser so it persists across page visits. 3. When they hit your thank you page, the snippet sends that stored source to your dashboard along with the new lead. ### UTM parameters for paid traffic For accurate paid attribution, make sure your ad URLs include UTM parameters. A Google Ads URL might look like: ``` https://yourwebsite.com/?utm_source=google&utm_medium=cpc&utm_campaign=spring-sale ``` > Tip: Google Ads auto-tags URLs with gclid parameters, but UTM params give you cleaner, more readable data in Lead Recorder. --- ## Adding team members and clients How to invite a team member or client to your Lead Recorder account, what each role can see, and how plan limits apply. URL: https://www.leadrecorder.com/docs/team-members-and-clients Only the account admin (the person who signed up) can send invites. Go to Team in the sidebar, or leadrecorder.com/team directly. ### Team member vs. client - Team member: can view every site on the account and mark leads as reviewed. Use this for colleagues who work across your whole account. - Client: read-only access to one specific site you choose when you send the invite. Use this for someone who should only see one site's leads. > Note: A client invite is a real login, separate from the no-login share link (see below). Use whichever fits: an invite if they need their own account, a share link if you just want to send a URL. ### Step 1: Send the invite 1. On the Team page, enter the person's email address. 2. Choose Team member or Client. If Client, pick the one site they should see. 3. Click Create invite link. This does two things: it emails the invite to that address automatically, and it shows you a copyable link on screen in case you'd rather send it yourself, over Slack for example. Either one works, and the link expires in 7 days. ### Step 2: They accept The invite link takes them to a sign-up page. Once they create a password, they land in the dashboard scoped to their role: every site for a team member, one site for a client. ### Plan limits - Business: 1 team member, unlimited clients - Studio: 5 team members, unlimited clients - Agency: 15 team members, unlimited clients If you're at your plan's limit, the invite form will tell you to upgrade rather than let you send it. ### Revoking access There's no self-serve remove-a-team-member button yet. Email hello@leadrecorder.com to have someone's access removed. [See client share links](/docs/client-share-links) --- ## Sharing a read-only link with a client How to send a client a no-login view of their leads, instead of inviting them as a full account member. URL: https://www.leadrecorder.com/docs/client-share-links Every site has its own shareable link: a read-only page showing that site's leads and sources. No account, no password, nothing for them to set up. Find it on the site's dashboard page, under the site's settings. Turning it off revokes the link immediately. ### Comments You can optionally let a client mark a lead or leave a note on the shared page, useful for tracking which enquiries actually turned into work. ### White labeling On the Agency plan, the shared page carries your branding instead of Lead Recorder's. > Note: This is different from a client invite (see Adding team members and clients): a share link needs no login and shows only that one site; a client invite creates a real account scoped the same way. --- ## Managing your plan and billing Where to change plan, update your payment method, view invoices, or cancel, and how it differs by how you signed up. URL: https://www.leadrecorder.com/docs/managing-your-plan-and-billing Everything is on the Account page. What you see there depends on how you're billed. ### Billed through Stripe (most accounts) Click Manage billing on the Account page. It opens the Stripe customer portal, where you can update your payment method, view past invoices, change plan, or cancel, all self-serve. ### Billed through Shopify If you installed the Shopify app, billing runs through Shopify itself. Click Open Shopify billing on the Account page to manage it from the Shopify admin. ### Billed through Wix If you installed the Wix app, billing runs through Wix. Click Open Wix billing on the Account page to manage it from the Wix app dashboard. > Note: Whichever way you're billed, you can change or cancel any time. There's no lock-in and no call to book. If you cancel, new tracking pauses but your dashboard and historical leads stay fully readable. --- ## Referring clients and the partner program How the affiliate program works, what it pays, and how the certified partner tier is different. URL: https://www.leadrecorder.com/docs/referral-and-partner-program ### Affiliate program Refer someone and earn 30% recurring commission for as long as they stay subscribed. There's no cap on how many people you refer, and signup is instant and self-serve. [Get your referral link](https://leadrecorder.promotekit.com) ### Certified partner program A separate, vetted tier for agencies and freelancers who install and manage Lead Recorder for clients directly, rather than just sending a referral link. It's a short application, not instant signup: you're checked on correct install, source cross-checking, and a working shareable link. - Listed in the partner directory, where business owners looking for a partner get routed to you first - The same 30% recurring commission as the affiliate program, whether the client came from your own referral link or a directory match --- ## How to install Lead Recorder on WordPress Install the Lead Recorder snippet on any WordPress site using our official plugin, or a general header/footer plugin, no theme editing required. URL: https://www.leadrecorder.com/docs/wordpress-manual The easiest way to add Lead Recorder to WordPress is our own plugin: install it, paste your snippet, and you're done. If you'd rather not add another plugin, a general-purpose header/footer plugin works too. ### Step 1: Copy your snippet Log in to your Lead Recorder dashboard, select your site, and copy your tracking snippet. ``` ``` ### Option A: The Lead Recorder plugin (recommended) 1. In your WordPress admin, go to Plugins > Add New and search for Lead Recorder. 2. Install and activate it. 3. Go to Settings > Lead Recorder. 4. Paste your snippet (or just the key) and click Save snippet. > Note: The plugin only stores your tracking key and builds the script tag itself; there's nothing else to configure. It's listed on the WordPress plugin directory (wordpress.org/plugins/search/lead-recorder) and it's open source: github.com/leadrecorder/lead-recorder. ### Option B: Insert Headers and Footers plugin Already using a general-purpose header/footer plugin for other scripts? This works just as well. 1. In your WordPress admin, go to Plugins > Add New. 2. Search for Insert Headers and Footers by WPBeginner. 3. Install and activate it. 4. Go to Settings > Insert Headers and Footers. 5. Paste your Lead Recorder snippet into the Scripts in Header field. 6. Click Save. ### Verify installation Visit your website, then open your Lead Recorder dashboard. The snippet indicator should go green within a few minutes. You can also right-click your site, select View Page Source, and search for leadrecorder to confirm the script tag is there. > Tip: If you use a caching plugin like WP Super Cache or W3 Total Cache, clear the cache after installing so the snippet goes live immediately. --- ## How to install Lead Recorder on Divi Add the Lead Recorder snippet to a Divi site through Theme Options. No plugin needed. URL: https://www.leadrecorder.com/docs/wordpress-divi Divi has a built-in header code field in Theme Options. No extra plugin required. ### Step 1: Copy your snippet Log in to your Lead Recorder dashboard, select your site, and copy your tracking snippet. ``` ``` ### Step 2: Open Divi Theme Options 1. In your WordPress admin, go to Divi > Theme Options. 2. Click the Integration tab. 3. Find the field labelled Add code to the of your blog. It is the first code field on the page. 4. Paste your Lead Recorder snippet into that field. 5. Click Save Changes. > Note: This field injects code into the of every page on your site, which is exactly where Lead Recorder needs to be. ### Step 3: Verify installation Visit your website and right-click, then View Page Source. Search for leadrecorder to confirm the script tag is loading. The dashboard should show a green installed indicator within a few minutes. > Tip: Clear any WordPress or server caches after saving so the snippet goes live right away. > Note: Prefer a dedicated plugin instead of Theme Options? Our official Lead Recorder plugin does the same job: install it, paste your snippet under Settings > Lead Recorder, and save. Find it at wordpress.org/plugins/search/lead-recorder, or it's open source: github.com/leadrecorder/lead-recorder. --- ## How to install Lead Recorder on Elementor Install the Lead Recorder tracking snippet on Elementor using Custom Code (Pro), our official plugin, or the free Insert Headers and Footers plugin, no theme editing needed. URL: https://www.leadrecorder.com/docs/wordpress-elementor Elementor Pro has a Custom Code feature for injecting scripts into the without editing theme files. If you're on the free version, use our official Lead Recorder plugin or the Insert Headers and Footers plugin instead. ### Option A: Elementor Pro (Custom Code) 1. Copy your Lead Recorder snippet from the dashboard. 2. In WordPress admin, go to Elementor > Custom Code. 3. Click Add New and give it a name like Lead Recorder. 4. Paste your snippet into the code editor. 5. Set Location to Head. 6. Set Priority to 10. 7. Click Publish. ``` ``` ### Option B: Free Elementor (Lead Recorder plugin, recommended) 1. Install the Lead Recorder plugin from Plugins > Add New. 2. Go to Settings > Lead Recorder. 3. Paste your snippet (or just the key) and click Save snippet. > Note: It's a small, open-source plugin purpose-built for this snippet. Get it from the WordPress plugin directory (wordpress.org/plugins/search/lead-recorder) or GitHub: github.com/leadrecorder/lead-recorder. ### Option C: Free Elementor (Insert Headers and Footers plugin) 1. Install the Insert Headers and Footers plugin from Plugins > Add New. 2. Go to Settings > Insert Headers and Footers. 3. Paste your snippet in the Scripts in Header field. 4. Click Save. ### Verify installation Visit your site and right-click, then View Page Source. Search for leadrecorder. The dashboard should show the snippet as installed. > Tip: Clear the Elementor cache under Elementor > Tools > Regenerate Files, plus any WordPress caching plugins, after saving. --- ## How to install Lead Recorder on Squarespace Add the Lead Recorder snippet to Squarespace using Code Injection in the settings panel. URL: https://www.leadrecorder.com/docs/squarespace Squarespace lets you inject custom code into the from the Settings panel. This requires a Business plan or higher. ### Step 1: Copy your snippet Log in to Lead Recorder, select your site, and copy your tracking snippet. ``` ``` ### Step 2: Open Code Injection 1. Log in to Squarespace and open your site. 2. Go to Settings > Developer Tools > Code Injection. 3. Paste your Lead Recorder snippet into the Header field. 4. Click Save. > Note: On older Squarespace versions, Code Injection is under Settings > Advanced > Code Injection. ### Step 3: Verify installation Visit your Squarespace site, right-click, and choose View Page Source. Search for leadrecorder. The dashboard should show the snippet as detected. > Warning: Code Injection is only available on Squarespace Business plans and higher. It is not available on Personal plans. --- ## How to install Lead Recorder on Wix Add the Lead Recorder snippet to Wix using the Custom Code tool in the Marketing & SEO panel. URL: https://www.leadrecorder.com/docs/wix Wix lets you add custom scripts to your site's through the Custom Code tool in Marketing & SEO. ### Step 1: Copy your snippet ``` ``` ### Step 2: Add the code in Wix 1. Log in to Wix and open your site dashboard. 2. In the left menu, click Marketing & SEO > Marketing Tools. 3. Scroll down to Custom Code and click Open. 4. Click Add Custom Code. 5. Paste your Lead Recorder snippet into the code box. 6. Give it a name like Lead Recorder. 7. Set Place Code to Head. 8. Set Add Code to All Pages. 9. Click Apply. 10. Publish your site. ### Step 3: Verify installation Visit your live Wix site (not the editor preview) and view the page source to confirm the snippet is loading. The Lead Recorder dashboard should show it as installed. > Tip: The snippet won't appear until you publish. Always check the live URL, not the editor preview. --- ## How to install Lead Recorder on Webflow Install Lead Recorder on Webflow by pasting your tracking snippet into Site Settings → Custom Code → Head Code, then publish and verify it's live. URL: https://www.leadrecorder.com/docs/webflow Webflow's Site Settings has a Head Code field where you can add scripts to every page. ### Step 1: Copy your snippet ``` ``` ### Step 2: Add the code in Webflow 1. Open your project in the Webflow Designer. 2. Click the gear icon (Site Settings) in the top-left toolbar. 3. Go to the Custom Code tab. 4. Find the Head Code section. 5. Paste your Lead Recorder snippet into the Head Code field. 6. Click Save Changes. 7. Publish your site. > Note: Head Code in Site Settings applies to all pages on your published site. ### Step 3: Verify installation After publishing, visit your site and view the page source. Search for leadrecorder. The dashboard should show the snippet as installed. > Tip: Custom code does not appear in the Designer preview. Always verify on the live published URL. --- ## How to install Lead Recorder on Shopify Add the Lead Recorder snippet to Shopify by editing your theme's layout file. URL: https://www.leadrecorder.com/docs/shopify On Shopify, add the snippet to your theme's main layout file (theme.liquid) so it loads on every page. [Get the Shopify app](https://apps.shopify.com/lead-recorder) ### Step 1: Copy your snippet (manual setup) ``` ``` ### Step 2: Edit your theme 1. In your Shopify admin, go to Online Store > Themes. 2. Click the three dots next to your active theme and select Edit Code. 3. In the left file tree, under Layout, click theme.liquid. 4. Find the closing tag. 5. Paste your Lead Recorder snippet on the line just before . 6. Click Save. ``` ``` ### Step 3: Verify installation Visit your Shopify store and right-click, then View Page Source. Search for leadrecorder to confirm it's loading. > Warning: Before editing theme code, duplicate your theme first. Go to Themes > three dots > Duplicate so you have a backup. --- ## How to install Lead Recorder on Framer Install the Lead Recorder snippet on Framer using our official plugin, or manually through Site Settings custom code. URL: https://www.leadrecorder.com/docs/framer The easiest way to add Lead Recorder to Framer is our own plugin: paste your snippet, click Install, and it writes the code into your site's for you. If you'd rather not add a plugin, Framer's built-in Custom Code panel works too. ### Step 1: Copy your snippet Log in to your Lead Recorder dashboard, select your site, and copy your tracking snippet. ``` ``` ### Option A: The Lead Recorder plugin (recommended) 1. In Framer, open the Plugins panel and search for Lead Recorder, then click Install. 2. Launch the plugin from the Plugins panel. 3. Paste your snippet (or just the key) into the field. 4. Click Install snippet. 5. Publish your site. > Note: The plugin installs the snippet through Framer's own Custom Code API, no Embed element needed. It's listed on the Framer Marketplace: framer.com/community/marketplace/plugins/lead-recorder. ### Option B: Add custom code manually 1. Open your project in Framer. 2. Click the gear icon to open Site Settings. 3. Go to the General tab and scroll down to Custom Code. 4. Paste your snippet into the Start of tag field. 5. Click Save. 6. Publish your site. ### Verify installation Visit your published Framer site and view the page source to confirm the snippet is there. The dashboard should show it as installed. > Tip: Custom code only appears on your published site, not in the Framer editor preview. Always verify on the live URL. --- ## How to install Lead Recorder on GoDaddy Website Builder Add the Lead Recorder snippet to GoDaddy Website Builder through the site settings. URL: https://www.leadrecorder.com/docs/godaddy GoDaddy Website Builder has a header code field in site settings where you can add custom scripts. ### Step 1: Copy your snippet ``` ``` ### Step 2: Add the code in GoDaddy 1. Log in to GoDaddy and open your Website Builder. 2. Click Settings (gear icon) in the top navigation. 3. Select Website settings. 4. Find the Header Code or Custom Script section. 5. Paste your Lead Recorder snippet into the field. 6. Click Save, then Publish. > Note: The exact location of the custom code field varies by GoDaddy Website Builder version. Look for Custom Code, Header Code, or SEO/Scripts in the settings. ### Step 3: Verify installation Visit your published GoDaddy site and search the page source for leadrecorder. The dashboard should show the snippet as detected. --- ## How to install Lead Recorder on Duda Add the Lead Recorder snippet to a Duda site using the Head HTML field in Site Settings. URL: https://www.leadrecorder.com/docs/duda Duda has a dedicated field for custom head code, separate from the page content itself, where a script tag like Lead Recorder's belongs. ### Step 1: Copy your snippet Log in to Lead Recorder, select your site, and copy your tracking snippet. ``` ``` ### Step 2: Add the code in Duda 1. Open your site in the Duda editor. 2. In the left-hand menu, select SEO & Settings (older versions: click More, then Settings). 3. Find the Head HTML field (older versions: Header HTML). 4. Paste your Lead Recorder snippet into the box, not into End Body HTML. 5. Save, then republish the site for the change to take effect on the live domain. > Note: Duda only accepts certain code in this field: , ``` ### Step 4: Test it Book a test appointment through your Calendly link. You should be redirected to your thank you page and see a new lead appear in your dashboard within a few seconds. > Tip: The source recorded is wherever the visitor was before they visited your site. If they clicked a Google Ad to reach your page first, the lead is attributed to Paid. --- ## How to track Acuity Scheduling bookings with Lead Recorder Track Acuity Scheduling bookings in Lead Recorder by redirecting to a thank you page after each booking. URL: https://www.leadrecorder.com/docs/acuity-scheduling Acuity lets you redirect clients to a custom URL after they book. Point that redirect to your thank you page so Lead Recorder can log the booking. ### Step 1: Create a thank you page Create a page on your website (e.g. yourwebsite.com/thank-you) and install the Lead Recorder snippet site-wide. ### Step 2: Configure the redirect in Acuity 1. Log in to your Acuity Scheduling account. 2. Go to Business Settings > Scheduling Page Options. 3. Find the After Booking or Confirmation Page section. 4. Select Redirect to a URL and enter your thank you page URL. 5. Save your settings. > Note: On some Acuity plans, the redirect option is under Client Scheduling Page > Confirmation Settings. ### Step 3: Test Book a test appointment and confirm you land on the thank you page. Check your Lead Recorder dashboard for the new lead. > Tip: When Acuity is embedded on your site, the snippet has already captured the visitor's traffic source before the booking flow starts. That source carries through to the lead record. --- ## How to track HoneyBook enquiry forms with Lead Recorder Track HoneyBook enquiry form submissions by redirecting to a thank you page after submission. URL: https://www.leadrecorder.com/docs/honeybook HoneyBook contact forms can redirect to a custom URL after submission. Use that to send visitors to your thank you page where Lead Recorder fires. ### Step 1: Set up your thank you page Create a thank you page on your website and install the Lead Recorder snippet site-wide. ### Step 2: Configure the redirect in HoneyBook 1. In HoneyBook, go to Tools > Contact Form. 2. Open the contact form you want to track. 3. Open the Confirmation / Redirect settings. 4. Enable Redirect after submission and enter your thank you page URL. 5. Save the form. > Note: If your HoneyBook plan doesn't include redirect support, you can include a link to your thank you page in your booking confirmation email instead. ### Step 3: Test Submit a test enquiry through your HoneyBook form. You should be redirected to your thank you page and see a new lead in the Lead Recorder dashboard. --- ## How to track external booking platform redirects Track bookings from external platforms like Booking.com when you can't control the confirmation page. URL: https://www.leadrecorder.com/docs/bookings-external-redirect Some booking platforms (Booking.com, Treatwell, Fresha, etc.) don't let you set a custom confirmation redirect. Here are two ways to handle that. ### Option A: Redirect through your own site 1. Create a page on your site (e.g. yourwebsite.com/book-now) with a button or link to the external booking platform. 2. Install the Lead Recorder snippet on this page so it captures the visitor's traffic source before they leave. 3. Create a thank you page on your site (yourwebsite.com/thank-you). 4. Include a link to your thank you page in your booking confirmation email so clients visit it after booking. > Note: Lead Recorder stores the traffic source in the visitor's browser. It can only log the lead automatically if the visitor returns to your thank you page in the same browser session. ### Option B: Log manually When automatic tracking isn't possible, log the lead manually. Open the dashboard, click Add Lead, and enter the details. This keeps all your leads in one place regardless of where the booking came from. > Tip: Check with the booking platform's support team whether they offer a confirmation redirect URL or webhook. Some platforms offer this as a less visible setting. --- ## How to track Contact Form 7 submissions Track Contact Form 7 submissions by redirecting to a thank you page after a successful submission. URL: https://www.leadrecorder.com/docs/contact-form-7 Contact Form 7 doesn't include a built-in redirect, but you can add one with a few lines of JavaScript or a free plugin. ### Step 1: Create a thank you page Create a page in WordPress at yourwebsite.com/thank-you and install the Lead Recorder snippet site-wide. ### Step 2: Add the redirect Add this JavaScript to your site. It runs after CF7 confirms the form was sent and redirects the visitor to your thank you page. ``` document.addEventListener('wpcf7mailsent', function(event) { window.location = '/thank-you'; }, false); ``` You can add this using the Insert Headers and Footers plugin (paste it in the Scripts in Footer field) or in your theme's functions.php. ### Alternative: CF7 Redirect plugin 1. Install the Contact Form 7 Success Page Redirects plugin from the WordPress plugin directory. 2. Edit your contact form in CF7. 3. Use the plugin's redirect field to enter your thank you page URL. ### Step 3: Test Submit your contact form. You should be redirected to the thank you page and see a new lead appear in the Lead Recorder dashboard. --- ## How to track Gravity Forms submissions Track Gravity Forms submissions by setting a confirmation redirect to your thank you page. URL: https://www.leadrecorder.com/docs/gravity-forms Gravity Forms has a built-in redirect confirmation. No plugins or code needed. ### Step 1: Create a thank you page Create a WordPress page at yourwebsite.com/thank-you and install the Lead Recorder snippet site-wide. ### Step 2: Set the confirmation redirect 1. In WordPress admin, go to Forms and open the form you want to track. 2. Click Settings > Confirmations. 3. Click the Default Confirmation to edit it. 4. Change Confirmation Type from Text to Redirect. 5. Enter your thank you page URL in the Redirect URL field. 6. Save the confirmation. ### Step 3: Test Submit the form and confirm you land on the thank you page. Check your Lead Recorder dashboard for the new lead. > Tip: If you have multiple forms, set a redirect confirmation on each one. All of them can point to the same thank you page URL. --- ## How to track WPForms submissions Track WPForms submissions by redirecting to a thank you page on successful submission. URL: https://www.leadrecorder.com/docs/wpforms WPForms supports URL redirects on submission in both the free and pro versions. ### Step 1: Create a thank you page Create a WordPress page at yourwebsite.com/thank-you and install the Lead Recorder snippet site-wide. ### Step 2: Set up the redirect 1. In WordPress admin, go to WPForms > All Forms and open your form. 2. Go to Settings > Confirmations. 3. Change Confirmation Type to Go to URL (Redirect). 4. Enter your thank you page URL. 5. Click Save. ### Step 3: Test Submit the form and confirm you reach the thank you page. A new lead should appear in your dashboard within a few seconds. > Tip: URL redirects work in WPForms Lite. You don't need the Pro version for this. --- ## How to track Typeform submissions Track Typeform completions by redirecting respondents to a thank you page after they finish. URL: https://www.leadrecorder.com/docs/typeform Typeform lets you replace the ending screen with a redirect to a URL. Set that URL to your thank you page and Lead Recorder will capture the lead. ### Step 1: Create a thank you page Create a page on your website at yourwebsite.com/thank-you and install the Lead Recorder snippet site-wide. ### Step 2: Set up the redirect in Typeform 1. Open your Typeform and go to the Endings section. 2. Add or edit the ending screen and change its type to Redirect. 3. Enter your thank you page URL as the redirect destination. 4. Publish your Typeform. > Note: In Typeform: Create > Endings > click the ending > select Redirect to a URL. This option requires a paid Typeform plan. ### Step 3: Test Complete your Typeform as a test respondent. You should be redirected to your thank you page and see a new lead in your dashboard. > Tip: When Typeform is embedded on your website, the snippet captures the visitor's source before they start the form. That source is stored and recorded when they hit the thank you page. --- ## How to track JotForm submissions Track JotForm submissions by redirecting to a thank you page after completion. URL: https://www.leadrecorder.com/docs/jotform JotForm can redirect respondents to a custom URL after submission. Use your thank you page as that URL. ### Step 1: Create a thank you page Create a page on your website at yourwebsite.com/thank-you and install the Lead Recorder snippet site-wide. ### Step 2: Configure the redirect in JotForm 1. Open your JotForm in the Form Builder. 2. Click Settings in the top menu. 3. Go to the Thank You Page tab. 4. Select Redirect to an external link after submission. 5. Enter your thank you page URL. 6. Click Save. ### Step 3: Test Submit your JotForm as a test. Confirm you land on the thank you page and check your dashboard for the new lead. > Tip: JotForm's redirect works for both standalone forms at jotform.com and forms embedded on your website. --- ## How to install Lead Recorder on GoHighLevel (GHL) Add the Lead Recorder snippet to GoHighLevel funnels and websites through the tracking code settings. URL: https://www.leadrecorder.com/docs/gohighlevel GoHighLevel lets you add custom scripts to funnels and websites through the tracking code settings at the funnel, website, or page level. ### Step 1: Copy your snippet ``` ``` ### Option A: Add to a Funnel 1. In GHL, go to Sites > Funnels and open your funnel. 2. Click Settings (gear icon) at the top right. 3. Paste your snippet into the Header Tracking Code field. 4. Click Save. ### Option B: Add to a Website 1. In GHL, go to Sites > Websites and open your website. 2. Click Settings. 3. Paste your snippet into the Header Tracking Code field. 4. Click Save. ### Step 2: Set up a thank you page Create a new step or page in your funnel called Thank You. Configure your forms to redirect there on submission. The snippet will fire on that page and log the lead. ### Step 3: Test Submit a test form in your GHL funnel, confirm you reach the thank you page, and check the Lead Recorder dashboard for the new lead. > Tip: Want each lead to also land inside GoHighLevel itself, as a contact with the source attached? That's a separate Zap, not this snippet. See leadrecorder.com/connect/lead-recorder-to-gohighlevel. --- ## How to install Lead Recorder on Unbounce Add the Lead Recorder snippet to Unbounce landing pages using the Script Manager. URL: https://www.leadrecorder.com/docs/unbounce Use Unbounce's Script Manager to add the Lead Recorder snippet to your landing pages without editing code. ### Step 1: Copy your snippet ``` ``` ### Step 2: Add the snippet in Unbounce 1. Log in to Unbounce and open your landing page. 2. Click Javascripts in the bottom toolbar. 3. Click Add a Javascript. 4. Paste your Lead Recorder snippet into the code editor. 5. Set Placement to Head. 6. Set Include on to All pages. 7. Click Done, then Publish. > Note: You can also use the Script Manager under Account > Script Manager to add it to all pages across your Unbounce account. ### Step 3: Configure form redirect In your Unbounce form settings, set the form action to redirect to your thank you page URL after submission. ### Step 4: Test Submit a test form, confirm you reach the thank you page, and check your Lead Recorder dashboard for the new lead. --- ## How to install Lead Recorder on Leadpages Add the Lead Recorder snippet to Leadpages through the Page Settings analytics field. URL: https://www.leadrecorder.com/docs/leadpages Leadpages has a Head Tracking Code field in each page's settings where you can add custom scripts to the . ### Step 1: Copy your snippet ``` ``` ### Step 2: Add the snippet in Leadpages 1. Open your Leadpage in the Leadpages builder. 2. Click Page Settings (gear icon). 3. Go to the Analytics tab. 4. Paste your snippet into the Head Tracking Code field. 5. Click Save. 6. Publish the page. ### Step 3: Set up a thank you page Create a separate Leadpage or a page on your main website as your thank you page. In your form settings, set the Success URL to your thank you page. Make sure the snippet is installed on that page too. ### Step 4: Test Submit a test form, confirm you land on the thank you page, and check your Lead Recorder dashboard for the new lead. > Tip: You can add the snippet at the account level under Leadpages Analytics settings to apply it to all your pages in one step. --- ## How to install Lead Recorder via Google Tag Manager Add Lead Recorder to any website through Google Tag Manager without editing code. URL: https://www.leadrecorder.com/docs/google-tag-manager If GTM is already installed on your site, you can deploy Lead Recorder through it without touching any code. ### Before you start Google Tag Manager needs to be installed on your website first. If it isn't, set that up before following these steps. ### Step 1: Copy your snippet Copy your Lead Recorder snippet from the dashboard. ``` ``` ### Step 2: Create a new tag in GTM 1. Log in to Google Tag Manager and open your container. 2. Go to Tags > New. 3. Click Tag Configuration and choose Custom HTML. 4. Paste your Lead Recorder snippet into the HTML field. ### Step 3: Set the trigger 1. Click Triggering and select All Pages. 2. Give the tag a name: Lead Recorder. 3. Click Save. ### Step 4: Preview and publish 1. Click Preview in GTM to test the tag on your live site. 2. Confirm the Lead Recorder tag fires on page load. 3. Click Submit to publish the container. > Tip: The defer attribute on the script means it loads without blocking the page, the same as adding it directly to the HTML. > Warning: If you use a cookie consent platform, GTM tags may be blocked until the visitor accepts. Whitelist the Lead Recorder script in your consent configuration. --- ## Connecting Google Ads to Lead Recorder How to connect Google Ads and see the exact campaign, ad group, and search term behind every paid lead. URL: https://www.leadrecorder.com/docs/google-ads-integration Without this integration, a paid lead just shows up labelled "Google Ads"; you know money brought them in, but not which campaign or keyword actually worked. Connecting Google Ads fills that gap by matching each paid lead to the specific campaign, ad group, and search term that drove the click. ### What you need - Admin access to the site in Lead Recorder - A Google account with access to the Google Ads account you run traffic through ### How to connect 1. Open your site's dashboard and click Integrations. 2. Click Connect next to Google Ads. 3. Sign in with the Google account that has access to your Ads account, and grant the requested permission. 4. You'll be redirected back to your dashboard, connected. If your Google account manages several accounts through a manager account (an MCC), Lead Recorder looks at what that login can see and picks a sensible one automatically. If there's more than one candidate, you'll get a dropdown to pick the right one. ### What it looks for When someone clicks a Google ad, Google automatically appends a click identifier to the landing page URL. That identifier is how Lead Recorder recognises a lead came from a specific ad click in the first place, and it's what gets matched back to Google Ads' own campaign data to fill in the details: a definitive match, not a guess. ### How syncing works - Right after you connect, Lead Recorder immediately looks at your recent leads and fills in what it can, no waiting required. - After that, it checks for new or still-pending leads automatically every few hours. - Campaign data is generally only available for leads from the last 90 days. Older leads that never resolved will show as unavailable rather than staying stuck on pending. > Tip: Occasionally a lead stays on "pending" for a little while after connecting; Google's own reporting can take a day or so to catch up on very recent clicks. --- ## Connecting Google Search Console to Lead Recorder How to connect Search Console and see the likely search query behind your organic (unpaid search) leads. URL: https://www.leadrecorder.com/docs/search-console-integration Organic leads don't carry the kind of click identifier that paid ads do, so there's no way to know for certain which search brought someone in. Connecting Search Console gets you the next best thing: Lead Recorder looks up what people were actually searching for when they found the page an organic lead landed on, and shows the most likely match. ### What you need - Admin access to the site in Lead Recorder - Your website already verified as a property in Google Search Console - A Google account with access to that Search Console property ### How to connect 1. Open your site's dashboard and click Integrations. 2. Click Connect next to Search Console. 3. Sign in with the Google account that has access to your site's Search Console property, and grant the requested permission. 4. Lead Recorder matches the property to your site's domain automatically, no need to pick anything. > Warning: If the Google account you sign in with doesn't have access to a Search Console property matching your site's domain, the connection will fail. Double check you're using the right Google login. ### What it looks for For each organic lead, Lead Recorder looks at which search queries Search Console recorded against the page that lead landed on, around the time they converted, and surfaces the top one. Because Search Console doesn't track individual visitors the way an ad click ID does, this is always shown as a likely match rather than a certainty; you'll see it marked accordingly in the dashboard. ### How syncing works - Right after you connect, Lead Recorder immediately looks at your recent organic leads and fills in what it can, no waiting required. - After that, it checks for new or still-pending leads automatically every few hours. - Search Console's own reporting typically lags a few days behind real time, so very recent leads may stay on "pending" briefly before a match appears. --- ## Zapier, Make, n8n & Wix API Reference Every Lead Recorder API endpoint that accepts a personal key: authentication, the Zapier/Make New Lead trigger, and how Pabbly, n8n and Wix connect to it. URL: https://www.leadrecorder.com/docs/zapier-integration The Lead Recorder Zapier and Make apps let you send new leads into any other tool (a CRM, Slack, a spreadsheet) the moment they're captured on your site, and the Wix app uses the same key to link a Wix site to a Lead Recorder account. All four authenticate with the same personal API key, and the same endpoints work directly from Pabbly Connect or n8n using their generic HTTP Request actions, no dedicated Lead Recorder app required in either. This page documents every endpoint reachable with that key, for reviewers and for anyone building against it directly. It does not cover the separate OAuth-based API our MCP server uses for AI assistant connections (Claude, Gemini, Grok); that has its own reference at /docs/mcp-server. ### Authentication Every request is authenticated with a personal API key, sent as a header: ``` X-Api-Key: lr_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ``` Generate a key from your Lead Recorder dashboard under Account → API access. Keys are account-scoped: a key grants access to whatever sites the generating user can already see (an admin sees every site on the account, a client only the sites they've been given access to). Regenerating a key immediately invalidates the previous one. A request with a missing or invalid key returns 401 Unauthorized. ### GET /api/zapier/auth/test Validates an API key. This is the endpoint Zapier or Make calls when a user connects their account. ``` curl -H "X-Api-Key: lr_xxx" https://www.leadrecorder.com/api/zapier/auth/test 200 OK { "email": "you@example.com" } ``` ### GET /api/zapier/sites Lists the sites the authenticated account can access. Powers the site dropdown on the New Lead trigger. ``` curl -H "X-Api-Key: lr_xxx" https://www.leadrecorder.com/api/zapier/sites 200 OK [ { "id": "abc123", "name": "My Website", "domain": "example.com" } ] ``` ### GET /api/zapier/leads Returns leads for a given site, newest first: the data source behind the New Lead trigger. Requires a siteId query parameter, and 404s if the authenticated account can't access that site. An optional limit query parameter caps the number of leads returned; it can only lower the cap, never raise it past the site owner's plan limit, which applies regardless (same as the leads list in the dashboard). gclid, gbraid, and fbclid are included specifically so Zap/Make templates that upload offline conversions back to Google Ads or Meta have a click ID to attribute against — they're null when a lead didn't come from a paid click. ``` curl -H "X-Api-Key: lr_xxx" \ "https://www.leadrecorder.com/api/zapier/leads?siteId=abc123&limit=10" 200 OK [ { "id": "lead_abc123", "submittedAt": "2026-07-28T04:32:10.000Z", "status": "new", "type": "form", "formPage": "/contact", "nameField": "Jane Smith", "emailField": "jane@example.com", "phoneNumber": "+61 400 000 000", "utmSource": "google", "utmMedium": "cpc", "utmCampaign": "brand", "utmTerm": null, "referrer": "https://www.google.com/", "landingPage": "/", "device": "desktop", "city": "Sydney", "country": "AU", "region": "NSW", "gclid": null, "gbraid": null, "fbclid": null } ] ``` ### POST /api/wix/site Finds or creates the Lead Recorder site record behind a Wix app install, called by the Wix app (not by Zapier or Make) once a user connects their API key during setup. Requires a JSON body with name and domain. Returns the existing site if one with that domain is already linked to the account; otherwise creates one, subject to the account's plan limit on number of sites. ``` curl -X POST -H "X-Api-Key: lr_xxx" -H "Content-Type: application/json" \ -d '{"name":"My Website","domain":"example.com"}' \ https://www.leadrecorder.com/api/wix/site 201 Created { "id": "abc123", "snippetKey": "9f2c..." } ``` > Note: All endpoints on this page are rate-limited per account and return 429 Too Many Requests if exceeded, expected only under misconfigured, unusually fast polling. ### New Lead trigger A polling trigger: once connected, pick a site from the dropdown and Zapier or Make checks for new leads on that site automatically. No webhook setup or extra configuration is needed. ### Connecting via Pabbly Connect or n8n Neither requires a published Lead Recorder app. Both have a generic HTTP action that can call the same endpoints documented above directly. #### Pabbly Connect 1. Create a workflow and add an API by Pabbly (or generic HTTP) action as the trigger step. 2. Set the method to GET, the URL to https://www.leadrecorder.com/api/zapier/leads?siteId=YOUR_SITE_ID, and add a header named X-Api-Key with your Lead Recorder API key. 3. Set the workflow to poll on a schedule (every few minutes is typical) and map the returned lead fields into whatever action runs next. #### n8n 1. Add an HTTP Request node, set to GET, with the URL https://www.leadrecorder.com/api/zapier/leads?siteId=YOUR_SITE_ID. 2. Under Authentication, choose Generic Credential Type → Header Auth, with the name X-Api-Key and your Lead Recorder API key as the value. 3. Trigger the node on a Schedule Trigger node (polling) or call it from anywhere else in a workflow that needs current lead data. > Note: Find your site's ID from GET /api/zapier/sites above. Your API key comes from Account → API access in the Lead Recorder dashboard, same key used for Zapier, Make, and Wix. --- ## Connecting Claude to Lead Recorder (MCP server) How the Lead Recorder MCP server works: the five tools it exposes, how the connection and OAuth flow work, and exactly what account data Claude can read. URL: https://www.leadrecorder.com/docs/mcp-server Lead Recorder runs a remote MCP (Model Context Protocol) server at mcp.leadrecorder.com so you can ask Claude for lead reports directly, without logging into the dashboard: "write me this month's report for Bob's Plumbing" or "which of my sites have gone quiet this week." This page documents the server for IT/security reviewers and for anyone connecting it directly: what it can access, how authentication works, and what each tool does. ### What data it can access Four of its five tools are read-only: they can't create, modify, or delete anything in a Lead Recorder account. The fifth, add_site, is the one exception. It can create a new site, but nothing else: it can't modify or delete an existing site, and it's restricted to account admins. Access is scoped by the same role-based permissions as the dashboard: an account admin or team member can see every site on that account; a client role only sees the sites they've explicitly been given access to. Connecting Claude never grants access beyond what the connecting user could already see by logging in. None of the five tools return an individual lead's name, email address, or phone number. They return site metadata (name, domain) and aggregated counts and breakdowns (totals, percentages, top sources), a materially narrower scope of data than the Zapier/Make integration, which does expose per-lead contact details for its New Lead trigger. ### Connecting Two ways to connect, depending on the client: - claude.ai (web): click Connect on the Lead Recorder connector. You're redirected to leadrecorder.com to sign in (if not already) and see a consent screen naming the account you're about to connect; approving redirects back to claude.ai with an authorization code, which is exchanged for an access token. This is a standard OAuth 2.1 authorization-code flow with PKCE; no client secret is ever exposed to the browser. - Claude Desktop / Claude Code: generate a personal key from Account → API access → Claude/MCP, and add it as a bearer token in the client's MCP server configuration (.mcp.json). This is the same kind of key used by the Zapier/Make integration, just issued from its own slot so revoking one never affects the others. ### Endpoints - https://mcp.leadrecorder.com: the MCP endpoint itself (Streamable HTTP transport) - https://mcp.leadrecorder.com/.well-known/oauth-protected-resource: RFC 9728 protected resource metadata - https://mcp.leadrecorder.com/.well-known/oauth-authorization-server: RFC 8414 authorization server metadata - https://www.leadrecorder.com/oauth/authorize: the interactive login/consent screen - https://www.leadrecorder.com/api/oauth/token: token exchange (authorization_code grant, PKCE required) - https://www.leadrecorder.com/api/oauth/register: Dynamic Client Registration (RFC 7591), so clients like claude.ai can register themselves automatically ### The five tools #### list_sites No parameters. Lists the sites (client websites) the connected account can see reports for: id, name, and domain only. #### get_monthly_report Parameters: siteId (required, from list_sites) and month (optional, YYYY-MM, defaults to the current month). Returns total leads, new vs. returning visitor counts, a phone/form/email/booking split, a paid/organic/direct channel breakdown, the top individual sources and campaigns by count, and the percentage of leads that arrived outside business hours. All figures are aggregated: no individual lead's contact details are included. #### get_quiet_sites Parameters: days (optional, defaults to 7). Lists sites on the account with zero leads in that window, along with how many days it's been since each one's last lead, useful for an agency spotting a client site that's gone quiet. #### add_site Parameters: name (required), domain (required), leadTypes (optional, one or more of form, phone, calendly, booking, defaults to form), thankYouUrl (optional, only used when leadTypes includes calendly or booking). Creates a new site on the account and returns its tracking snippet. Restricted to account admins: a team member or client role gets an error instead of a new site. Subject to the same plan site-limit and domain checks as adding a site from the dashboard. #### check_snippet Parameters: siteId (required, from list_sites or add_site). Reports whether that site's tracking snippet has ever fired: a boolean, and the timestamp of the last time it was seen if so. > Note: list_sites, get_monthly_report, get_quiet_sites, and check_snippet are read-only, idempotent, and only ever touch the connected account's own data (readOnlyHint, idempotentHint, and openWorldHint: false). add_site is the one exception: it creates data (readOnlyHint: false) and isn't idempotent. Calling it twice with the same details creates two separate sites. It also performs a DNS lookup on the domain provided, confirming it resolves, before creating the site; that lookup doesn't send any account data to the domain or fetch anything from it. ### Rate limiting Requests are rate-limited per account to 60 per minute, the same limit applied to the Zapier/Make integration. Returns a JSON-RPC error if exceeded, expected only under misconfigured, unusually fast polling. ### Revoking access A key generated manually from Account → API access → Claude/MCP can be revoked from that same page at any time, which immediately invalidates it. A connection made through the claude.ai OAuth flow is a separate credential from that manual key, so revoking the manual key doesn't affect an active OAuth connection: to revoke one today, disconnect the connector from claude.ai's own connector settings, or email hello@leadrecorder.com and we'll invalidate it on our end. This server is also listed on Smithery, a public directory of MCP servers. --- ## Connecting Gemini to Lead Recorder (MCP server) Who's eligible today, the exact setup steps in Gemini Spark's Connected Apps, and exactly what account data Gemini can read once it's connected. URL: https://www.leadrecorder.com/docs/gemini-mcp-server Lead Recorder runs a remote MCP (Model Context Protocol) server at mcp.leadrecorder.com so you can ask Gemini for lead reports directly, without logging into the dashboard, once it's added as a custom app under Gemini Spark's Connected Apps: "write me this month's report for Bob's Plumbing" or "which of my sites have gone quiet this week." > Warning: Gemini's custom app support is new and limited. Right now it requires Gemini Spark, a personal Google account rather than a work or school account, being 18 or over, being located in the US, and Gemini set to English. That rules most people outside the US out for now, including Australian users. > Tip: Not eligible yet? The same MCP server works with Claude today, with no eligibility limits there. See the "Connecting Claude to Lead Recorder (MCP server)" doc. ### What data it can access Four of its five tools are read-only: they can't create, modify, or delete anything in a Lead Recorder account. The fifth, add_site, is the one exception. It can create a new site, but nothing else: it can't modify or delete an existing site, and it's restricted to account admins. Access is scoped by the same role-based permissions as the dashboard: an account admin or team member can see every site on that account; a client role only sees the sites they've explicitly been given access to. Connecting Gemini never grants access beyond what the connecting user could already see by logging in. None of the five tools return an individual lead's name, email address, or phone number. They return site metadata (name, domain) and aggregated counts and breakdowns (totals, percentages, top sources), a materially narrower scope of data than the Zapier/Make integration, which does expose per-lead contact details for its New Lead trigger. ### Connecting 1. Go to gemini.google.com on a desktop browser, then open Settings and help. 2. Go to Connected Apps and find the "Custom apps for Spark" section. 3. Click Add a custom app and paste https://mcp.leadrecorder.com. If the server doesn't complete Dynamic Client Registration automatically, expand Advanced features and enter the connection details manually. ### Endpoints - https://mcp.leadrecorder.com: the MCP endpoint itself (Streamable HTTP transport) - https://mcp.leadrecorder.com/.well-known/oauth-protected-resource: RFC 9728 protected resource metadata - https://mcp.leadrecorder.com/.well-known/oauth-authorization-server: RFC 8414 authorization server metadata - https://www.leadrecorder.com/oauth/authorize: the interactive login/consent screen - https://www.leadrecorder.com/api/oauth/token: token exchange (authorization_code grant, PKCE required) - https://www.leadrecorder.com/api/oauth/register: Dynamic Client Registration (RFC 7591), for clients that support registering themselves automatically ### The five tools #### list_sites No parameters. Lists the sites (client websites) the connected account can see reports for: id, name, and domain only. #### get_monthly_report Parameters: siteId (required, from list_sites) and month (optional, YYYY-MM, defaults to the current month). Returns total leads, new vs. returning visitor counts, a phone/form/email/booking split, a paid/organic/direct channel breakdown, the top individual sources and campaigns by count, and the percentage of leads that arrived outside business hours. All figures are aggregated: no individual lead's contact details are included. #### get_quiet_sites Parameters: days (optional, defaults to 7). Lists sites on the account with zero leads in that window, along with how many days it's been since each one's last lead, useful for an agency spotting a client site that's gone quiet. #### add_site Parameters: name (required), domain (required), leadTypes (optional, one or more of form, phone, calendly, booking, defaults to form), thankYouUrl (optional, only used when leadTypes includes calendly or booking). Creates a new site on the account and returns its tracking snippet. Restricted to account admins: a team member or client role gets an error instead of a new site. Subject to the same plan site-limit and domain checks as adding a site from the dashboard. #### check_snippet Parameters: siteId (required, from list_sites or add_site). Reports whether that site's tracking snippet has ever fired: a boolean, and the timestamp of the last time it was seen if so. > Note: list_sites, get_monthly_report, get_quiet_sites, and check_snippet are read-only, idempotent, and only ever touch the connected account's own data (readOnlyHint, idempotentHint, and openWorldHint: false). add_site is the one exception: it creates data (readOnlyHint: false) and isn't idempotent. Calling it twice with the same details creates two separate sites. It also performs a DNS lookup on the domain provided, confirming it resolves, before creating the site; that lookup doesn't send any account data to the domain or fetch anything from it. ### Rate limiting Requests are rate-limited per account to 60 per minute, the same limit applied to the Zapier/Make integration and the Claude connector. Returns a JSON-RPC error if exceeded, expected only under misconfigured, unusually fast polling. ### Revoking access Remove the custom app from Gemini's Connected Apps settings at any time, or revoke the key from Account → API access. Disconnecting Gemini doesn't affect a Claude or Grok connection, since each is issued its own credential. --- ## Connecting Grok to Lead Recorder (MCP server) The exact setup steps for adding Lead Recorder as a custom connector in grok.com/connectors, and exactly what account data Grok can read once it's connected. URL: https://www.leadrecorder.com/docs/grok-mcp-server Lead Recorder runs a remote MCP (Model Context Protocol) server at mcp.leadrecorder.com so you can ask Grok for lead reports directly, without logging into the dashboard, once it's added as a custom connector: "write me this month's report for Bob's Plumbing" or "which of my sites have gone quiet this week." ### What data it can access Four of its five tools are read-only: they can't create, modify, or delete anything in a Lead Recorder account. The fifth, add_site, is the one exception. It can create a new site, but nothing else: it can't modify or delete an existing site, and it's restricted to account admins. Access is scoped by the same role-based permissions as the dashboard: an account admin or team member can see every site on that account; a client role only sees the sites they've explicitly been given access to. Connecting Grok never grants access beyond what the connecting user could already see by logging in. None of the five tools return an individual lead's name, email address, or phone number. They return site metadata (name, domain) and aggregated counts and breakdowns (totals, percentages, top sources), a materially narrower scope of data than the Zapier/Make integration, which does expose per-lead contact details for its New Lead trigger. ### Connecting 1. Go to grok.com/connectors. 2. Click New Connector, then choose Custom. 3. Paste https://mcp.leadrecorder.com as the MCP server URL and complete the authentication prompt that follows. Lead Recorder's server registers itself automatically, so no manual client setup should be needed. > Note: xAI doesn't publicly document which Grok plan tiers include custom connector support. If the option isn't there at grok.com/connectors, check your account's plan. ### Endpoints - https://mcp.leadrecorder.com: the MCP endpoint itself (Streamable HTTP transport) - https://mcp.leadrecorder.com/.well-known/oauth-protected-resource: RFC 9728 protected resource metadata - https://mcp.leadrecorder.com/.well-known/oauth-authorization-server: RFC 8414 authorization server metadata - https://www.leadrecorder.com/oauth/authorize: the interactive login/consent screen - https://www.leadrecorder.com/api/oauth/token: token exchange (authorization_code grant, PKCE required) - https://www.leadrecorder.com/api/oauth/register: Dynamic Client Registration (RFC 7591), for clients that support registering themselves automatically ### The five tools #### list_sites No parameters. Lists the sites (client websites) the connected account can see reports for: id, name, and domain only. #### get_monthly_report Parameters: siteId (required, from list_sites) and month (optional, YYYY-MM, defaults to the current month). Returns total leads, new vs. returning visitor counts, a phone/form/email/booking split, a paid/organic/direct channel breakdown, the top individual sources and campaigns by count, and the percentage of leads that arrived outside business hours. All figures are aggregated: no individual lead's contact details are included. #### get_quiet_sites Parameters: days (optional, defaults to 7). Lists sites on the account with zero leads in that window, along with how many days it's been since each one's last lead, useful for an agency spotting a client site that's gone quiet. #### add_site Parameters: name (required), domain (required), leadTypes (optional, one or more of form, phone, calendly, booking, defaults to form), thankYouUrl (optional, only used when leadTypes includes calendly or booking). Creates a new site on the account and returns its tracking snippet. Restricted to account admins: a team member or client role gets an error instead of a new site. Subject to the same plan site-limit and domain checks as adding a site from the dashboard. #### check_snippet Parameters: siteId (required, from list_sites or add_site). Reports whether that site's tracking snippet has ever fired: a boolean, and the timestamp of the last time it was seen if so. > Note: list_sites, get_monthly_report, get_quiet_sites, and check_snippet are read-only, idempotent, and only ever touch the connected account's own data (readOnlyHint, idempotentHint, and openWorldHint: false). add_site is the one exception: it creates data (readOnlyHint: false) and isn't idempotent. Calling it twice with the same details creates two separate sites. It also performs a DNS lookup on the domain provided, confirming it resolves, before creating the site; that lookup doesn't send any account data to the domain or fetch anything from it. ### Rate limiting Requests are rate-limited per account to 60 per minute, the same limit applied to the Zapier/Make integration and the Claude connector. Returns a JSON-RPC error if exceeded, expected only under misconfigured, unusually fast polling. ### Revoking access Remove the connector from grok.com/connectors at any time, or revoke the key from Account → API access. Disconnecting Grok doesn't affect a Claude or Gemini connection, since each is issued its own credential. --- ## Connecting ChatGPT to Lead Recorder (MCP server) How the Lead Recorder ChatGPT plugin works: the five tools it exposes, how the connection and OAuth flow work, and exactly what account data ChatGPT can read. URL: https://www.leadrecorder.com/docs/chatgpt-mcp-server Lead Recorder's ChatGPT plugin runs on the same remote MCP (Model Context Protocol) server at mcp.leadrecorder.com as the Claude connector, so you can ask ChatGPT for lead reports directly, without logging into the dashboard: "write me this month's report for Bob's Plumbing" or "which of my sites have gone quiet this week." This page documents the server for IT/security reviewers and for anyone connecting it directly: what it can access, how authentication works, and what each tool does. ### What data it can access Four of its five tools are read-only: they can't create, modify, or delete anything in a Lead Recorder account. The fifth, add_site, is the one exception. It can create a new site, but nothing else: it can't modify or delete an existing site, and it's restricted to account admins. Access is scoped by the same role-based permissions as the dashboard: an account admin or team member can see every site on that account; a client role only sees the sites they've explicitly been given access to. Connecting ChatGPT never grants access beyond what the connecting user could already see by logging in. None of the five tools return an individual lead's name, email address, or phone number. They return site metadata (name, domain) and aggregated counts and breakdowns (totals, percentages, top sources), a materially narrower scope of data than the Zapier/Make integration, which does expose per-lead contact details for its New Lead trigger. ### Connecting - chatgpt.com: open the Lead Recorder plugin and click Connect. You're redirected to leadrecorder.com to sign in (if not already) and see a consent screen naming the account you're about to connect; approving redirects back to ChatGPT with an authorization code, which is exchanged for an access token. This is a standard OAuth 2.1 authorization-code flow with PKCE; no client secret is ever exposed to the browser. - Custom connector: generate a personal key from Account → API access → Claude/MCP, and add mcp.leadrecorder.com as a custom connector in ChatGPT's connector settings, using that key as a bearer token. This is the same kind of key used by the Zapier/Make integration, just issued from its own slot so revoking one never affects the others. ### Endpoints - https://mcp.leadrecorder.com: the MCP endpoint itself (Streamable HTTP transport) - https://mcp.leadrecorder.com/.well-known/oauth-protected-resource: RFC 9728 protected resource metadata - https://mcp.leadrecorder.com/.well-known/oauth-authorization-server: RFC 8414 authorization server metadata - https://www.leadrecorder.com/oauth/authorize: the interactive login/consent screen - https://www.leadrecorder.com/api/oauth/token: token exchange (authorization_code grant, PKCE required) - https://www.leadrecorder.com/api/oauth/register: Dynamic Client Registration (RFC 7591), so clients like ChatGPT can register themselves automatically ### The five tools #### list_sites No parameters. Lists the sites (client websites) the connected account can see reports for: id, name, and domain only. #### get_monthly_report Parameters: siteId (required, from list_sites) and month (optional, YYYY-MM, defaults to the current month). Returns total leads, new vs. returning visitor counts, a phone/form/email/booking split, a paid/organic/direct channel breakdown, the top individual sources and campaigns by count, and the percentage of leads that arrived outside business hours. All figures are aggregated: no individual lead's contact details are included. #### get_quiet_sites Parameters: days (optional, defaults to 7). Lists sites on the account with zero leads in that window, along with how many days it's been since each one's last lead, useful for an agency spotting a client site that's gone quiet. #### add_site Parameters: name (required), domain (required), leadTypes (optional, one or more of form, phone, calendly, booking, defaults to form), thankYouUrl (optional, only used when leadTypes includes calendly or booking). Creates a new site on the account and returns its tracking snippet. Restricted to account admins: a team member or client role gets an error instead of a new site. Subject to the same plan site-limit and domain checks as adding a site from the dashboard. #### check_snippet Parameters: siteId (required, from list_sites or add_site). Reports whether that site's tracking snippet has ever fired: a boolean, and the timestamp of the last time it was seen if so. > Note: list_sites, get_monthly_report, get_quiet_sites, and check_snippet are read-only, idempotent, and only ever touch the connected account's own data (readOnlyHint, idempotentHint, and openWorldHint: false). add_site is the one exception: it creates data (readOnlyHint: false) and isn't idempotent. Calling it twice with the same details creates two separate sites. It also performs a DNS lookup on the domain provided, confirming it resolves, before creating the site; that lookup doesn't send any account data to the domain or fetch anything from it. ### Rate limiting Requests are rate-limited per account to 60 per minute, the same limit applied to the Zapier/Make integration and the Claude connector. Returns a JSON-RPC error if exceeded, expected only under misconfigured, unusually fast polling. ### Revoking access A key generated manually from Account → API access → Claude/MCP can be revoked from that same page at any time, which immediately invalidates it. A connection made through ChatGPT's own OAuth flow is a separate credential from that manual key, so revoking the manual key doesn't affect an active connection: to revoke one today, disconnect the plugin from ChatGPT's own connector settings, or email hello@leadrecorder.com and we'll invalidate it on our end. --- ## Connecting HubSpot to Lead Recorder How to connect HubSpot and attach real call outcomes and deal values to the leads Lead Recorder already tracks. URL: https://www.leadrecorder.com/docs/hubspot-integration Lead Recorder tracks every form submission and phone click on your site, so you know how many leads each channel produces. What it can't tell you on its own is what happened after: did the call go anywhere, did it become a deal, what was it worth. If those leads also end up in HubSpot, this connects the two: instead of "Google Ads produced 22 leads," you can see "Google Ads produced $40,000 in won deals." ### What you need - Admin access to the site in Lead Recorder - A HubSpot account where the same people who submit your forms end up as Contacts (through a HubSpot form, a manual add, or another tool) ### How to connect 1. Open your site's dashboard and click Integrations. 2. Click Connect next to HubSpot. 3. Approve the connection on HubSpot's consent screen. 4. You'll be redirected back to your dashboard, connected. > Warning: This integration is read-only: it never creates or edits anything in HubSpot. It only reads Contacts, Calls, and Deals to enrich leads already captured on your site. If a lead never becomes a HubSpot Contact by some other means, there's nothing for it to match against. ### What it matches on, and what it can't Each pending lead is matched to a HubSpot contact by email first, then phone number, if an email match isn't found. This means a lead that only left an email or phone number (a form submission, mainly) can be matched. A bare phone click has no identifier attached to it at all (you know someone tapped a call button, not who they were or what number they rang from), so it structurally can't be matched to anything, no matter how the connection is configured. Be upfront about this in your own reporting: if roughly half your leads are pure phone clicks, roughly half will never show HubSpot data, and that's expected, not a bug. ### How syncing works - Right after you connect, Lead Recorder immediately checks recent leads for a match, no waiting required. - After that, it checks again automatically every few hours. - Matching is attempted for 60 days after a lead comes in, since a deal can take a while to close. A lead that never matches in that window is marked unavailable rather than staying stuck on pending. > Tip: When a match is found, the lead's detail view shows the deal value, deal stage, deal name, and the most recent call outcome, whichever of those exist on the matched contact. > Tip: Want the source, campaign, and landing page pushed into HubSpot itself as contact properties, rather than reading HubSpot data back into Lead Recorder? That's a separate Zap, not this integration. See leadrecorder.com/connect/lead-recorder-to-hubspot. # Blog ## A correction to our lead source statistics Our July lead source statistics reversed as the tracked cohort broadened from 9 to 26 sites. Here's what changed, why, and the corrected numbers. URL: https://www.leadrecorder.com/blog/lead-source-statistics-correction Published: 2026-09-06T22:39:13.638Z A correction to our lead source statistics In July we published a page of lead source statistics: attribution data from real customer websites, positioned as more honest than the usual vendor survey because it showed its sample size, its limitations, and its cohort bias up front. The single most quoted number on that page was that phone taps made up 52.7% of recorded leads, the majority lead type. That's not the majority anymore, and it's worth explaining why rather than quietly updating the numbers. What's different now Across the current, larger sample of 26 real contributing sites, up from 9 in July, form submissions are now the majority lead type: 48.2% forms to 44.3% phone taps. The main reason is real growth. The tracked cohort went from 9 trades and home-services sites managed by one agency to 26 sites that now include SaaS, agency, e-commerce, healthcare, and immigration-advisory businesses. Form-led businesses joined, and the average moved toward forms. We checked whether that's actually what explains the reversal, rather than assuming. Recomputing phone share on the exact same 9 original sites, extended to the current window, phone taps are still running above 50% there, slightly higher than in July, not lower. The finding didn't reverse for those businesses. The mix of businesses changed underneath the headline number. We also tightened how we exclude internal and test accounts from the tracked sample this refresh, which is a smaller factor behind the updated figures. The exact rule is published in full in the stats page methodology, so it's checkable against every future refresh. The number that survives Phone share by trade: 97.1% for plumbing (now across 2 sites and 623 leads, up from a single-site 98.1%), 70.7% for cleaning, 51.8% for locksmith and car keys, 36.5% for electrical, 18.6% for blinds and window furnishings, and 18.0% for painting. That range was always the more useful fact than any single headline average, and it's what the phone-versus-form section on the stats page leads with now, not the overall split. Everything else that moved Unpaid channels (organic search, direct, and referral combined) are now 67.9% of leads, up from 54% in July, as paid traffic's share fell from 46% to 32.1%. Direct traffic, leads with no referrer and no UTM data at all, rose from 19% to 24.1%. The lead journey shifted slightly longer: a median of 2 pages viewed before enquiry instead of 1, 1.8 minutes to enquiry instead of 1.6, and 83.6% converting on the first visit instead of 87%. Small movements individually, but they all point the same direction as the cohort broadens beyond fast-decision trade callouts. Day-of-week and hour-of-day figures also needed a second look. Restricted to the Australian-majority sites in the cohort (mixing in real international traffic was distorting the "AEST" framing), Tuesday is now the busiest day, not Monday, though the weekday spread is much flatter than it was. Out-of-hours enquiries are 45.6% on that same Australian-only slice, close to the original 45% once you account for the two releases using slightly different definitions of business hours. What we're holding back We're not building a Google Ads search-term section this quarter, even though we could: 9 accounts now have Google Ads connected, but only 5 have enough resolved search-term data to be worth showing, and most of that is one site. We'll build that section once it reflects more than one business's keywords. Full numbers, the by-trade breakdown, and the complete methodology are on the lead source statistics page itself, refreshed 7 September 2026. The CSV export has been updated to match. The next refresh is due in December. --- ## How to Set Up Lead Source Tracking in Under an Hour Four steps to a working lead source setup in under an hour: UTM links, form fields, call tracking, and a dashboard that ties it together. URL: https://www.leadrecorder.com/blog/setup-lead-source-tracking-under-hour Published: 2026-08-30T22:03:38.179Z # Simple Lead Source Tracking Setup: Step-by-Step Guide for Small Teams You need to know where your leads come from. Not eventually. Not when you have time to learn Google Analytics 4. Today. This guide will get you from zero to a working lead tracking system in under an hour. Not a perfect system. Not an enterprise-grade analytics platform. A practical setup that tells you which marketing efforts are actually generating business. You'll complete four stages: building the foundation with UTM parameters and form fields, connecting everything to your CRM, adding three quick wins that make the data immediately useful, and knowing what to watch in your first week. No developer required. No analytics degree needed. ## Why Most Lead Tracking Setups Fail (And Why Yours Won't) Most small teams abandon lead tracking within three weeks. The pattern is predictable. First failure point: over-complication. Someone decides to track every possible data point. Seventeen custom fields. Five different tools. Integration dependencies that break when one platform updates. The system becomes a maintenance nightmare before it delivers a single useful insight. Second failure point: tracking too many sources. You end up with forty-three different lead sources in your CRM. "Facebook - Organic - Post - Thursday - Image - Blue Background" tells you nothing actionable. Analysis paralysis sets in. Nobody looks at the data because it's overwhelming. Third failure point: the data just sits there. You collect everything perfectly. It flows into your CRM beautifully. Then nobody uses it. Sales doesn't check it. Marketing doesn't review it. It becomes digital clutter. This guide focuses on the 20% of tracking that delivers 80% of insights. Four core sources. Three hidden form fields. One weekly review. Simple enough to maintain. Useful enough to actually inform decisions. ## What You'll Actually Track (The 4 Sources That Matter) You're tracking four sources. Not fourteen. Not forty. Four. This isn't cutting corners. It's strategic simplification. These four categories cover more than 90% of lead generation for most small businesses. More importantly, they're distinct enough that each one tells you something different about your marketing effectiveness. ### Organic search This captures people finding you through Google, Bing, and other search engines without clicking ads. Someone searched for a solution. Your content appeared. They clicked through and converted. Organic search leads are typically your highest-intent traffic. They actively looked for what you offer. This source tells you whether your SEO and content marketing efforts are generating actual business, not just traffic. ### Paid advertising Google Ads, Facebook ads, Instagram ads, LinkedIn ads. Any channel where you're paying for visibility. Track this as one category initially. You can break it down by platform later if you need to, but starting with "paid" as a single source directly connects your ad spend to lead generation. ROI calculations become straightforward when you know how many leads came from paid channels versus how much you spent. ### Direct traffic and referrals Direct means someone typed your URL directly or came from a bookmark. Referrals are links from other websites, partner sites, or directories. These are grouped together because they're harder to influence directly but still important to monitor. This source shows brand awareness and the strength of your referral network. If this number grows steadily, your brand recognition is improving. ### Social media Organic posts and engagement across LinkedIn, Facebook, Instagram, and whatever platforms you're active on. Not paid social ads. Those fall under paid advertising. This reveals whether your social presence is actually driving business outcomes. Likes and comments are nice. Leads are better. This source tells you if your social strategy is working beyond vanity metrics. ## The 15-Minute Foundation: UTM Parameters and Form Fields ![example of URL with UTM parameters highlighted](https://images.pexels.com/photos/270408/pexels-photo-270408.jpeg?auto=compress&cs=tinysrgb&h=650&w=940) Photo by Pixabay on [Pexels](https://www.pexels.com) Two technical elements make everything else possible: UTM parameters and hidden form fields. UTM parameters are simple tags you add to URLs. They tell you exactly where traffic came from. Hidden form fields are invisible fields on your contact forms that capture source data when someone submits. Set these up correctly once, and they work automatically forever. ### Setting up your UTM naming convention (5 minutes) You need three parameters. Not five. Three. utm_source identifies the platform: facebook, google, linkedin, newsletter. utm_medium identifies the channel type: paid, organic, email, social. utm_campaign identifies the specific campaign: spring-sale-2026, webinar-march, case-study-promo. Always use lowercase. Always use hyphens instead of spaces. Keep names descriptive but brief. Example: yourwebsite.com.au?utm_source=linkedin&utm_medium=paid&utm_campaign=lead-gen-march Don't build these URLs manually. Use Google's Campaign URL Builder. It's free. It prevents typos. It saves time. ### Adding hidden fields to your forms (10 minutes) Add three hidden fields to every contact form on your website: lead_source, lead_medium, and lead_campaign. In Gravity Forms: go to form settings, add new field, select "Hidden", name it lead_source, set it to dynamically populate from the URL parameter utm_source. In WPForms: add a Hidden field, click Advanced Options, enable Dynamic Population, set Parameter Name to utm_source. In HubSpot forms: add a hidden field, select "Create new property", name it Lead Source, set it to auto-populate from utm_source query parameter. Repeat for lead_medium and lead_campaign. Critical step: set a fallback. If no UTM parameter is present, capture the referring URL or mark the source as "direct". This ensures you never lose source data, even when people don't click tracked links. ## Connecting the Dots: CRM Integration in 20 Minutes ![computer screen showing CRM dashboard analytics data](https://images.pexels.com/photos/139387/pexels-photo-139387.jpeg?auto=compress&cs=tinysrgb&h=650&w=940) Photo by Negative Space on [Pexels](https://www.pexels.com) Your forms now capture source data. Now you need that data flowing into your CRM where you can actually use it. This is the bridge between capturing data and making it actionable. Most modern CRMs have built-in form integrations. No coding required. ### Mapping form fields to CRM properties Field mapping tells your CRM which form field corresponds to which contact property. First, create custom properties in your CRM. In HubSpot: Settings > Properties > Create property. Name it "Lead Source", set type to "Single-line text". Repeat for "Lead Medium" and "Lead Campaign". In Pipedrive: Settings > Data fields > Add new field. Select "Person" as the field type, name it "Lead Source", choose "Text" as the field format. Then map your form fields. In HubSpot's form settings, go to the Options tab, find Form-to-CRM field mapping. Match lead_source to your Lead Source property. Match lead_medium to Lead Medium. Match lead_campaign to Lead Campaign. Save the mapping. Don't skip this step. This is where many setups break. ### Testing your first tracked lead Create a test URL: yourwebsite.com.au/contact?utm_source=test&utm_medium=organic&utm_campaign=setup-verification Visit that URL. Submit your contact form with test information. Check your CRM. Find the new contact record. Look for your custom properties. You should see "test" in Lead Source, "organic" in Lead Medium, and "setup-verification" in Lead Campaign. If the data didn't appear, check two things: your hidden fields might not be capturing UTM parameters correctly, or your field mapping didn't save. Fix it now before moving forward. If you need expert help getting this right the first time, [Lead Recorder](https://leadrecorder.com) specializes in setting up lead tracking systems that actually work for small teams. ## The Final 25 Minutes: Quick Wins You Can Set Up Today ![spreadsheet with data analytics on laptop screen](https://images.pexels.com/photos/7947999/pexels-photo-7947999.jpeg?auto=compress&cs=tinysrgb&h=650&w=940) Photo by RDNE Stock project on [Pexels](https://www.pexels.com) The tracking works. These three additions make the data immediately more useful. Each takes 5-10 minutes. You can implement them now or come back to them later. But they're worth doing. ### Creating a simple tracking spreadsheet template Build a basic Google Sheet with six columns: Date, Lead Source, Lead Medium, Campaign, Lead Name, Conversion Status. Every Friday, export your week's new leads from your CRM. Copy them into this sheet. Sort by source. You now have a weekly snapshot that's easier to scan than CRM reports when you're just starting out. This sounds manual. It is. That's the point. Manually reviewing your leads weekly forces you to actually look at the data instead of letting it accumulate unused. ### Setting up one automated alert for high-value sources Create one alert. Not five. One. Set up a notification for when a lead comes from your best-performing source. If organic search historically converts best for you, get notified when someone submits a form from organic search. In HubSpot: Workflows > Create workflow > Contact-based > Set enrollment trigger to "Lead Source is organic" > Add action "Send notification" to yourself or your sales team via email or Slack. Hot leads get immediate attention instead of sitting in a queue. That's the entire purpose. ### Building your first source performance dashboard Create a simple dashboard with three metrics: leads by source, conversion rate by source, and source trend over the last four weeks. In HubSpot's reporting tool: Create custom report > Select "Contacts" > Group by "Lead Source" > Add filters for date range and lifecycle stage. If you're using Google Sheets, create a pivot table from your weekly tracking sheet. Rows: Lead Source. Values: Count of leads, count of conversions. Review this dashboard every Friday. You'll quickly spot which sources are working and which need attention. ## Your First Week With Lead Tracking (What to Watch For) The first week is about confirming the system works, not drawing conclusions. Check daily: new leads are being tagged with sources, no leads are showing as "unknown" or blank, and your dashboard is updating with fresh data. Do a Friday review. Look for any patterns emerging. Identify any tracking gaps. If you're seeing too many "direct" leads, you might need to add UTM parameters to more of your marketing links. You won't have enough data to make major decisions yet. That takes 2-4 weeks for most small teams. This is normal. The system is an investment that compounds in value as data accumulates. You've built a foundation that will tell you, week after week, which marketing efforts are actually generating business. That's worth an hour of setup time. Ready to take your lead tracking further? [Lead Recorder](https://leadrecorder.com) helps small teams implement simple, effective tracking systems without the complexity of enterprise analytics platforms. --- ## 7 Lead Tracking Mistakes That Are Costing You Sales Seven ways leads slip through between first contact and sale, and how small teams can close each gap without hiring anyone. URL: https://www.leadrecorder.com/blog/lead-tracking-mistakes-costing-sales Published: 2026-08-28T22:03:19.739Z # The Most Common Lead Tracking Mistakes Small Businesses Make You're losing sales right now. Not because your product is wrong or your pricing is off. You're losing them because somewhere between "interested" and "customer," leads are vanishing into a black hole you didn't know existed. Most small businesses don't have a lead tracking problem because they're careless. They have one because they're busy. You're juggling sales calls, marketing campaigns, customer service, and somehow trying to remember who you spoke to last Tuesday about that $3,000 project. The mistakes below aren't dramatic. They're quiet. They compound. And they're costing you more than you think. ## Why your leads are slipping through the cracks (and you don't even know it) ![overwhelmed business owner desk messy papers sticky notes](https://images.pexels.com/photos/5185074/pexels-photo-5185074.jpeg?auto=compress&cs=tinysrgb&h=650&w=940) Photo by cottonbro studio on [Pexels](https://www.pexels.com) Here's what actually happens: A lead comes in Monday morning. You're in back-to-back meetings. You scribble their details on a Post-it note. By Wednesday, that note is buried under invoices. By Friday, they've hired someone else. You didn't ignore them deliberately. You just had no system forcing you to act. The problem isn't memory. It's that you're trying to hold dozens of moving parts in your head while running a business. Something has to give. Usually, it's the follow-up. ## Mistake #1: Treating all leads the same in your tracking system Not every lead deserves the same attention. Sounds harsh. It's true. Someone who filled out a contact form asking for a quote is not the same as someone who downloaded a free guide. One is ready to buy. The other is browsing. If you treat them identically, you'll either waste time on cold prospects or lose hot ones to competitors who moved faster. ### Why this kills your follow-up timing When everything looks equally urgent, nothing is. You end up following up based on whatever catches your eye first, not what actually matters. The $15,000 opportunity sits in your inbox while you reply to someone asking if you service their suburb. Timing matters more than most businesses admit. A lead who's actively comparing quotes needs a response within hours, not days. Miss that window and they've already moved on. ### The simple fix: three lead categories you actually need Stop overcomplicating it. You need three categories: **Hot:** They've asked for pricing, a proposal, or a meeting. They're ready to buy now. These get same-day follow-up, no exceptions. **Warm:** They've shown interest but aren't ready to commit. Maybe they're researching options or waiting on budget approval. Follow up weekly until they move or go cold. **Cold:** They enquired months ago and never responded. Or they explicitly said "not now." Keep them in your system but don't waste active selling time on them. That's it. Three buckets. If you can't decide which category a lead belongs in, they're probably warm. ## Mistake #2: Logging leads in multiple places (spreadsheets, notebooks, email) ![multiple devices laptop notebook phone spreadsheet scattered workspace](https://images.pexels.com/photos/15335017/pexels-photo-15335017.jpeg?auto=compress&cs=tinysrgb&h=650&w=940) Photo by Roman Koval on [Pexels](https://www.pexels.com) You've got leads in a spreadsheet. Some in your email drafts. A few scribbled in a notebook. Maybe a couple in your phone's notes app from that networking event last month. This isn't a system. It's chaos with good intentions. ### The real cost: leads you contacted twice and leads you never contacted When your leads live in five different places, two things happen. First, you accidentally contact the same person twice because you forgot you already emailed them. Embarrassing, and it makes you look disorganised. Second, and worse, you completely miss leads. They fall through the gaps between systems. You think you followed up. You didn't. They hired someone else. One centralised place. That's the fix. Whether it's a proper tracking system or just a single, well-maintained spreadsheet, pick one location and stick to it religiously. ## Mistake #3: Not recording where leads actually came from Quick question: which of your marketing efforts actually brings in customers? If you can't answer that immediately, you're guessing. And guessing means you're probably wasting money on channels that don't work while underinvesting in ones that do. ### What happens when you can't tell which marketing works You keep paying for Google Ads because "everyone does it," even though most of your actual customers come from referrals. Or you spend hours on social media content that generates likes but zero enquiries. Without source tracking, you're flying blind. You can't double down on what works because you don't know what works. The fix is simple but requires discipline. Every time you log a lead, record where they came from. Website form. Phone call. Referral from Sarah. LinkedIn message. Networking event. Be specific. "Online" isn't good enough. After three months, you'll have actual data showing which channels deserve your time and budget. This is where tools like **Lead Recorder** become invaluable, automatically capturing source information so you're not relying on memory or manual entry. ## Mistake #4: Skipping the 'next action' field You log the lead. You record their details. Then you close the spreadsheet and tell yourself you'll "follow up later." Later never comes. ### Why 'follow up later' guarantees you won't Your brain can't hold 30 different "I should probably contact them" tasks. It just can't. Without a specific next action written down, that lead becomes invisible. You'll remember them at random moments, feel guilty, and still not follow up because you're in the middle of something else. Every lead needs a next action. Not "follow up." That's too vague. It needs to be: "Send proposal by Thursday 2pm" or "Call to discuss budget on Monday morning" or "Email case study examples by end of week." Specific action. Specific deadline. No room for interpretation. ## Mistake #5: No system for tracking follow-up attempts You emailed them once. Heard nothing. Now what? Most businesses give up after one attempt. That's leaving money on the table. But you also can't chase people forever. You need a rule. ### The three-attempt rule you're probably breaking Three attempts. That's the sweet spot. One email. One follow-up a few days later. One final check-in a week after that. If they haven't responded by then, they're either not interested or not ready. But here's the critical part: you need to log each attempt. Not just in your sent folder. In your tracking system. Otherwise, you'll forget whether you've contacted them once or three times, and you'll either give up too early or become that person who emails seven times. Track the date, the method (email, phone, LinkedIn), and the response. If there's no response after three attempts, mark them cold and move on. Your time is worth more than chasing ghosts. ## Mistake #6: Forgetting to mark when leads go cold (or why) Dead leads don't disappear. They just sit there, cluttering your pipeline, making you think you're busier than you are. ### How dead leads clog your pipeline and waste your time When you look at your tracking system and see 50 "active" leads, you feel busy. But if 30 of them went cold months ago, you're not busy. You're just disorganised. Dead leads waste time in two ways. First, you keep seeing them and feeling like you should do something. Second, they hide the real opportunities. When everything looks like a lead, nothing stands out. Mark them cold. Record why if you know. "Budget disappeared." "Went with competitor." "Stopped responding after three attempts." This isn't just housekeeping. It's data. Patterns in why leads go cold tell you what's broken in your process. ## Mistake #7: Never reviewing your tracking data to spot patterns ![business analytics data review charts laptop professional](https://images.pexels.com/photos/7109291/pexels-photo-7109291.jpeg?auto=compress&cs=tinysrgb&h=650&w=940) Photo by Tiger Lily on [Pexels](https://www.pexels.com) You're collecting all this information. Source, status, follow-up attempts, outcomes. And then you never look at it. That's like running a business with your eyes closed. ### The monthly 15-minute review that changes everything Once a month, spend 15 minutes looking at your lead data. Not individual leads. Patterns. Which sources bring in the most leads? Which sources bring in the most customers? Those aren't always the same. How long does it typically take from first contact to sale? Are you losing leads at a particular stage? This is where **Lead Recorder** makes the difference. Instead of manually combing through spreadsheets, you get clear visibility into what's working and what isn't, so you can make decisions based on reality, not gut feel. Fifteen minutes. That's all it takes to spot the patterns that could double your conversion rate or save you thousands in wasted marketing spend. ## Start with one fix, not seven Don't try to fix everything at once. You'll get overwhelmed and fix nothing. Pick the mistake that's costing you the most right now. If you're losing hot leads because you can't tell them apart from cold ones, start with categorisation. If you're wasting money on marketing that doesn't work, start with source tracking. Fix one thing properly. Then move to the next. If you need help building a tracking system that actually works for your business, **Lead Recorder** specialises in simple, practical lead tracking that doesn't require a PhD to understand. No complexity. Just the information you actually need to close more sales. The leads are already there. You just need to stop losing them. --- ## You Tracked the Lead. Now What? A Practical Follow-Up System for Website Enquiries Tracking where a lead came from is only the first step. Learn how to route, qualify and respond to website enquiries without losing the context that made them convert. URL: https://www.leadrecorder.com/blog/website-lead-follow-up Published: 2026-08-14T07:08:15.418Z A visitor searches for an electrician. They click an ad, land on the right service page and submit a quote form. The whole thing can happen remarkably fast. In Lead Recorder's 2026 lead-source data, the median time from landing on the website to making an enquiry was just 1.6 minutes across its current sample of Australian local-service sites. Then something strange happens. The lead, who made a decision in under two minutes, lands in a shared inbox and waits. Someone needs to notice it. Someone needs to work out who owns it. Someone needs to read the form, check where it came from and decide what to say. The marketing worked. The form worked. The tracking worked. The follow-up is where everything starts relying on people remembering what to do next. That's the part worth fixing. 1. The Lead Came In Fast. Your Follow-Up Probably Didn't Speed matters, but not for the reason most lead-generation advice suggests. The goal isn't to send an automated "Thanks, we'll be in touch" email three seconds after every enquiry. That's technically fast. It's not particularly useful. The real goal is to reduce the dead space between: "I'm interested" and "Here's what happens next." That gap matters even more for local and service businesses. Lead Recorder's current dataset found that 45% of recorded leads arrived outside standard business hours. That's not a universal benchmark (the data currently skews towards Australian trades and home-service businesses), but it illustrates a very practical problem. Your website doesn't close when your office does. Someone can request an emergency plumbing quote at 8:30pm. A homeowner can enquire about blinds on Sunday morning. A potential agency client can fill in a form while you're in another meeting. A good website lead follow-up process has to work when nobody is staring at the inbox. That doesn't mean every lead needs an instant sales call. It means every lead should have a clear next step. 2. Tracking the Lead Is Not the Same as Managing It This distinction sounds obvious until you look at how many businesses mix the two together. As Lead Recorder explains in its plain-English guide to lead tracking, tracking records that a lead exists, where it came from and what happened to it. Lead management starts after that. That's where you: assign the enquiry qualify it respond schedule the next action move it through a pipeline close it as won or lost Tracking tells you: Sarah came through Google Ads after searching for an emergency plumber. Management answers: Who is calling Sarah, what do they need to know before calling, and what happens if nobody can reach her? Those are different problems. Buying better attribution software won't fix a follow-up process where enquiries sit unassigned. And buying a CRM won't automatically fix poor attribution if every new contact arrives labelled "Direct". The useful setup is when the two stay connected. The source comes in with the lead. Then the source stays with that lead while the business actually does something with it. 3. Don't Throw Away the Context You Already Have A website visitor tells you more than whatever they type into the contact form. Before submitting, they may have: arrived from a specific Google Ads campaign searched for a particular service landed on a location page viewed a pricing page read a particular service page moved through several pages before enquiring That context is useful. Yet a surprisingly common workflow strips most of it away. The marketing platform has the campaign. Analytics has the session. The website has the form. The salesperson gets: New website enquiry John Smith 04XX XXX XXX "Please call me." Now the first conversation starts with less information than the business already had. That's backwards. Lead Recorder's form tracking is built around keeping the traffic source and page journey attached when a submission becomes a lead. That information shouldn't disappear at the next step. If someone came through a page for "commercial electrical maintenance", the person replying shouldn't need to ask whether they're interested in residential rewiring. If a lead came from an emergency-service campaign, that tells you something about urgency. If they spent their visit on a pricing or quote page, that gives the first response a different starting point from someone who downloaded a general guide. You don't need to turn every page view into a psychological profile. Just don't throw away useful context you've already collected. 4. Decide Where the Lead Goes Before It Arrives A new enquiry shouldn't trigger a discussion about who deals with it. That decision should already exist. For a small business, routing can be simple: New quote → sales inbox Existing customer → support Emergency enquiry → on-call phone Commercial project → senior estimator For an agency: New business → founder or sales Existing client enquiry → account manager Website issue → support The exact rules don't matter as much as having rules. Lead Recorder already supports sending captured leads into the tools teams actually work in through its connections for CRM, Slack, email and other workflows. That's useful because the best destination is rarely "another dashboard everyone needs to remember to check". If your team lives in HubSpot, the lead should appear there. If a small team responds from Slack, send it there. If someone on the road needs a text alert, design for that. The lead should find the team, not the other way around. One caution: don't create five notifications for every enquiry. A CRM entry, Slack message, email alert, SMS and spreadsheet row may feel thorough during setup. Three weeks later, everyone assumes somebody else responded. Choose one clear owner and one primary workflow. Everything else is reporting. 5. Make the First Response Useful, Not Just Fast There are two bad first responses. The first is slow. The second is instant but useless. Thanks for your enquiry. A member of our team will contact you shortly. That confirms the form worked. It doesn't move the conversation forward. Compare it with: Thanks, James. We've got your request about the leaking hot-water system in Parramatta. Is the unit still leaking now, or has the water been isolated? The second message does something. It confirms the business understood the request and asks the next useful question. That's the standard to aim for. A good first response should usually do one of four things: Answer an obvious question Collect one missing detail Set a clear expectation Route the lead to the right person Sometimes it can do several. A quote enquiry might need the job location before anybody can price it. A web-design lead might need the current website URL. A legal enquiry might need to be routed to the correct practice area without trying to give legal advice. A plumber may simply need to establish whether the issue is urgent. The mistake is treating every enquiry as identical because they all came through the same form. 6. Qualification Should Feel Like a Conversation Qualification gets ugly when businesses try to collect everything before talking to anyone. You know the form. Name. Email. Phone. Company. Budget. Project size. Preferred start date. How did you hear about us? Describe your project. Upload documents. Select from 14 services. By the time the person reaches Submit, they've applied for a mortgage. There are situations where detailed intake is necessary. Most initial enquiries aren't one of them. A better approach is progressive qualification. Collect enough information to identify the person and understand the broad request. Then ask the next relevant question based on what they've actually said. A painter might need: suburb interior or exterior approximate property size preferred timeframe An agency might need: website service required broad objective timing The questions aren't interchangeable. Qualification works best when it reduces uncertainty rather than satisfying a database schema. There's another benefit. The answers become useful context for the person who eventually takes over. "New website lead" isn't much help. "Homeowner in Bondi, exterior repaint, two-storey property, wants work completed before October" gives someone a real starting point. 7. Know What AI Should Handle and When a Human Should Step In AI can be useful in this part of the workflow, but only when you give it a sensible job. "Handle every lead automatically" is not a sensible job. "Answer common questions, collect missing information and hand the conversation over when judgment is needed" is much closer. For example, an AI customer support platform such as Mando can answer website visitors using connected business knowledge, collect lead information and pass conversations to a human team with the existing context when the enquiry needs a person. The distinction matters. Imagine someone asks: Do you service the Northern Beaches? If that information exists in the business's approved content, there's little reason to make the visitor wait until tomorrow morning for an answer. Now imagine the next message is: It's a strata building with water coming through the ceiling and we need someone tonight. That's no longer a generic information request. The useful job for automation is to recognise the change, collect what the team needs and get the enquiry to the right human. Good automation removes waiting and repetitive questions. It shouldn't remove judgment where judgment is useful. 8. Keep the Lead Source Attached to the Outcome The follow-up process creates information marketing needs back. This is where attribution becomes much more valuable. Suppose Google Ads sends ten leads. Your Facebook campaign sends eight. Organic search sends seven. If you stop measuring there, Google Ads wins. Now look at what happened next: SourceLeadsQualifiedWon Google Ads1041 Facebook820 Organic Search764 That's a very different marketing report. The point isn't that organic is always better. The example is hypothetical. The point is that lead count is an intermediate result. Lead Recorder makes the same argument in its article on why marketing reports can look successful while the underlying business result isn't. Traffic isn't a customer. A conversion event isn't necessarily a qualified enquiry. And a lead isn't revenue. Once the sales or service team knows what happened to the enquiry, send that information back into your reporting. At minimum, keep: source lead status qualified / unqualified won / lost value, where appropriate Now you can stop asking which marketing channel creates the most activity. You can ask which one creates work the business actually wants. 9. A Simple Website Lead Follow-Up Workflow You don't need a 38-stage automation diagram. For most small teams, the process can fit on one screen. Step 1: Capture the enquiry and source Record the lead when the form, booking or call happens. Keep the channel, campaign and relevant page context attached. Step 2: Route it immediately Send the lead to the CRM, inbox, Slack channel or person responsible for the next action. One owner. Not five notifications and collective responsibility. Step 3: Send a useful acknowledgement Confirm what the person enquired about. Answer something immediately if the answer is known. Ask one useful question if information is missing. Step 4: Qualify only what matters Don't interrogate the lead. Collect the details required to decide what should happen next. Step 5: Escalate when necessary Route unusual, valuable, sensitive or complex enquiries to a person. Carry the context forward. Step 6: Record the outcome Qualified? Booked? Won? Lost? Spam? Not a fit? Don't leave every lead permanently labelled "New". Step 7: Feed the result back into marketing Compare actual lead outcomes by campaign and channel. That's where attribution becomes useful for budget decisions. 10. What to Measure After the Form Fill You don't need twenty KPIs. Start with the ones that reveal whether leads are disappearing between marketing and sales. Time to first useful response Not the autoresponder. When did the lead actually receive an answer or next step that helped them? Unassigned leads How many enquiries arrived without a clear owner? Ideally, this number is boring. Qualification rate What percentage of recorded enquiries were genuine opportunities? This starts separating lead volume from lead quality. Follow-up completion Did the action that was supposed to happen actually happen? If someone was supposed to call on Monday, did they? Outcome by source Which campaigns and channels produce qualified, won or valuable leads? This is the number marketing attribution was trying to reach in the first place. Reason lost Price. Wrong location. No response. Not the right service. Went with a competitor. Spam. The reason matters because not every lost lead is a marketing problem. If half your Google Ads leads are outside your service area, fix targeting. If good enquiries repeatedly go cold before anyone calls them, fix follow-up. Those require completely different decisions. The Form Fill Isn't the Finish Line Getting someone to enquire is difficult enough. You paid for the ad. You wrote the page. You ranked in search. You built the form. You tracked the source. Then somebody raised their hand. At that point, the job changes. Marketing has created intent. The follow-up process has to do something useful with it. Keep the context. Give the lead an owner. Reply with something more useful than "we'll be in touch". Ask only the questions that matter. Bring a human in when the conversation needs one. And keep the original source attached all the way to the outcome. Otherwise, you're doing the hard part (generating and tracking the lead) and leaving the rest to whoever happens to notice the inbox first. --- ## Google Ads Shows Conversions But You're Not Getting Leads Google Ads counts form loads and calls as conversions, not paying customers. How to see which ones actually turned into real leads. URL: https://www.leadrecorder.com/blog/google-ads-shows-conversions-not-getting-leads Published: 2026-08-07T22:03:15.395Z # Why Your Google Ads Dashboard Shows Conversions But Real Leads Aren't Coming In You check your Google Ads dashboard on Monday morning. Forty-seven conversions. You feel pretty good about that. Then you open your CRM. Twelve actual enquiries. Four of them are spam. This isn't a tracking glitch. It's not user error. And you're not losing your mind. The problem is fundamental: Google Ads tracks technical events, not qualified business leads. What the platform calls a "conversion" often has nothing to do with whether a real person submitted real information that could turn into revenue. This disconnect makes advertisers question their sanity, their team's competence, or both. The issue isn't that you've done something obviously wrong. It's that Google Ads optimises for what it can measure, not what actually matters to your business. ## When the Dashboard Lies: Why Your 'Conversions' Aren't Real Leads ![frustrated business person looking at computer analytics dashboard](https://images.pexels.com/photos/8353809/pexels-photo-8353809.jpeg?auto=compress&cs=tinysrgb&h=650&w=940) Photo by Kampus Production on [Pexels](https://www.pexels.com) Google Ads optimises for what it tracks. If you've told it to track form page loads, it'll send you people who load form pages. If you've told it to track button clicks, it'll send you people who click buttons. Neither of these things guarantees you'll get a qualified lead. The core problem is simple: conversions in Google Ads are technical events. They're not business outcomes. Picture this. You celebrate twenty conversions on Monday. You check your CRM on Tuesday. Six actual leads. Three of them are competitors doing research. Two filled out the form with fake details. One is legitimate. That's a 95% phantom conversion rate. This happens because Google Ads counts what it can see: page loads, clicks, form submissions. It can't verify whether the person who triggered that event is a real prospect, whether they provided accurate information, or whether that enquiry will ever reach your inbox. ## The Tracking Mirage: What Google Ads Actually Counts as a Conversion By default, Google Ads counts technical events as conversions. A form page loading. A button being clicked. Someone landing on your thank-you page. These events don't verify whether a real person submitted real information. The platform fires conversion tracking when something happens on your website. It doesn't check whether that something resulted in a lead you can actually follow up with. Google Ads can also over-report conversions by attributing them to ads even after users switch channels. Someone clicks your ad, browses your site, leaves, comes back three days later via organic search, and converts. [Google Ads still claims credit](https://seekandhit.com/analytics/unraveling-data-discrepancies-between-google-ads-and-ga4%EF%BF%BC/) for that conversion. This isn't deliberate deception. It's a tracking limitation. Google Ads sees the world through clicks and page loads, not through your sales pipeline. ### Google Ads counts clicks, not outcomes Google Ads tracks when someone clicks to your site. It doesn't track whether they became a customer. Every ad click counts as a separate event, even if the same person clicks multiple times. Someone researching your service might click your ad on Monday, again on Wednesday, and once more on Friday. That's three clicks. If they convert, that's potentially three conversions attributed to three different days. What you actually care about: qualified enquiries that could close. The gap looks like this. One hundred clicks might generate ten form views. Five submissions. Two qualified leads. Google Ads reports conversions based on whatever you've told it to track. If you're tracking form views, it reports ten. If you're tracking submissions, it reports five. Neither number tells you that only two of those people are worth calling. ### Form submissions that never reach your inbox Google Ads fires conversion tracking when the thank-you page loads. Not when the email arrives in your inbox. This creates a gap. The conversion gets recorded. The lead never reaches you. Common reasons forms track but don't deliver: broken email integration, spam filters catching legitimate enquiries, incomplete submissions where someone hit submit but the form handler failed. [Incomplete page loads can prevent conversion tracking from firing](https://support.dotdigital.com/en/articles/9615323-why-google-analytics-and-dotdigital-show-different-numbers), which is why Google Analytics results are sometimes lower than expected. You don't need to understand SMTP settings or form handlers to fix this. You just need to know that what Google Ads counts and what actually lands in your CRM are often two different things. ### Bot traffic and email scanners triggering false conversions Email scanning software and security bots can trigger conversion tracking without any human interaction. Corporate email scanners click every link in your confirmation email to check for malware. That click loads your thank-you page. Google Ads sees a conversion. You get nothing. Google Analytics cannot track visits by email scanning software because it doesn't trigger JavaScript. But Google Ads conversion tracking can still fire if the page loads at all. This inflates your conversion numbers while delivering zero actual leads. If you're running campaigns targeting corporate decision-makers, this problem gets worse. Enterprise email security is aggressive. Every confirmation email you send might generate phantom conversions. ## The Attribution Time Warp: Why Your Conversion Dates Don't Match Reality Conversions appear in Google Ads on dates that don't match when leads actually came in. This makes it impossible to follow up promptly or accurately measure campaign performance. The timing problem creates chaos. You see a spike in conversions on Tuesday. You check your CRM. Nothing came in on Tuesday. You find the leads scattered across Wednesday, Thursday, and Friday. One came in the previous week. This happens because of how Google Ads attributes conversions. It doesn't record them when they happen. It records them when the ad click happened. ### Google Ads backdates conversions to the click date [Google Ads attributes conversions to the date and time of the ad click](https://seekandhit.com/analytics/unraveling-data-discrepancies-between-google-ads-and-ga4%EF%BF%BC/), not when the conversion actually happened. Someone clicks your ad on Monday. They browse. They leave. They come back on Friday and convert. Google Ads reports it as a Monday conversion. This matters because you can't match dashboard conversions to CRM entries by date. Your CRM shows a lead came in on Friday. Google Ads says you got a conversion on Monday. They're the same person, but the dates don't line up. GA4 attributes conversions to the actual date of action, creating discrepancies between platforms. If you're trying to reconcile data across systems, this timing difference will make you question everything. ### The 6-month attribution window that inflates your numbers Google Ads can claim credit for conversions up to six months after someone clicked your ad. If someone clicked your ad in January and converted in June through organic search, [Google Ads still counts it](https://support.dotdigital.com/en/articles/9615323-why-google-analytics-and-dotdigital-show-different-numbers). This attribution window differs from other platforms, which may expire after one hour, causing reporting discrepancies. Here's what this looks like in practice. Someone researches your service in Q1. They click your ad, browse your site, don't convert. They go quiet for three months. In Q3, they come back via direct traffic and submit an enquiry. Google Ads still claims that conversion. This inflates your numbers. It also makes it nearly impossible to understand which campaigns are actually driving immediate results versus which ones are getting credit for conversions that would have happened anyway. ## How to Audit What's Actually Happening (And Fix It) ![business person analyzing spreadsheet data comparison on laptop](https://images.pexels.com/photos/7691749/pexels-photo-7691749.jpeg?auto=compress&cs=tinysrgb&h=650&w=940) Photo by Yan Krukau on [Pexels](https://www.pexels.com) Here's how to verify what's real and what's phantom. This is a diagnostic process, not a one-time fix. Tracking needs ongoing monitoring. The goal is aligning Google Ads data with actual business outcomes. Not perfect alignment—that's impossible. But close enough that you can make decisions based on what the dashboard tells you. ### Cross-reference your CRM against Google Ads conversion dates Export Google Ads conversions and CRM leads for the same period. Compare them. You'll need to account for the click-date versus conversion-date difference when matching records. This is tedious. It's also the only way to know what's actually happening. Look for patterns. If Google shows forty conversions but your CRM shows fifteen leads, you have a 2.6x inflation rate. That's your baseline. Now you know that every conversion in Google Ads represents roughly 0.4 actual leads. You don't need a sophisticated CRM for this. A spreadsheet works. Export both datasets, sort by date, and start matching. ### Set up server-side conversion tracking to bypass browser issues Server-side tracking sends conversion data directly from your server to Google, bypassing browser limitations. This eliminates issues with ad blockers, incomplete page loads, and JavaScript failures. It dramatically improves tracking accuracy. This requires technical implementation. You'll likely need developer help. But if you're spending serious money on Google Ads and your conversion data is unreliable, this is worth the investment. Lead Recorder specialises in helping businesses implement accurate tracking systems that bypass these browser-based limitations. If you're not technical and need this set up properly, working with specialists who understand both the Google Ads side and the server-side implementation makes the process significantly faster. ### Create a 'qualified lead' conversion action separate from form submits Track form submissions as one conversion. Then manually mark qualified leads as a separate, more valuable conversion. This lets Google's algorithm optimise for actual lead quality, not just form completions. Use CRM integration or manual tagging to feed qualified leads back into Google Ads. When someone submits a form, that's a "Form Submit" conversion. When your sales team qualifies that lead, that's a "Sales Qualified Lead" conversion with a higher value assigned. Over time, Google Ads learns which clicks generate qualified leads versus which ones generate junk. The algorithm adjusts. Your cost per qualified lead improves. ## Trust Your Pipeline, Not Your Dashboard Google Ads data is a proxy metric. Your CRM and sales pipeline are the source of truth. Fixing tracking is important. Measuring actual business outcomes matters more. The mindset shift: optimise for revenue and qualified leads, not dashboard conversions. If your Google Ads dashboard shows fifty conversions but your sales team only has ten leads worth calling, the dashboard number is irrelevant. Lead Recorder helps businesses cut through the noise and focus on what actually drives growth—qualified enquiries that turn into revenue. If you're tired of celebrating phantom conversions and want tracking that reflects reality, get in touch for a consultation. --- ## Your Marketing Reports Are Lying to You Green dashboards and upward graphs while your client quietly shops for your replacement. Why most marketing reports mislead more than they inform. URL: https://www.leadrecorder.com/blog/marketing-reports-lying-to-you Published: 2026-08-06T01:34:00.251Z # Your Marketing Reports Are Lying to You Most marketing reports don't just misrepresent success. They actively mislead you into making terrible budget decisions. The numbers look good. The graphs trend upward. The dashboard glows green. Meanwhile, your client is quietly shopping for your replacement. This isn't a technical problem you can fix with better software. It's a systemic issue that destroys agency-client relationships and wastes marketing budgets on channels that don't actually drive business results. The reports aren't technically wrong. They're just measuring things that don't matter. Here's what's actually happening, why it matters, and how to fix it before your next client walks. ## The Dashboard That Made Everything Look Perfect (Until the Client Left) ![frustrated business person looking at analytics dashboard on laptop](https://images.pexels.com/photos/7109243/pexels-photo-7109243.jpeg?auto=compress&cs=tinysrgb&h=650&w=940) Photo by Tiger Lily on [Pexels](https://www.pexels.com) Picture this: You're presenting the quarterly review. Website traffic is up 40%. Social engagement increased 25%. Email open rates hit their highest point all year. The client nods politely. Two weeks later, they terminate the contract. What happened? While you celebrated traffic and engagement, the client was looking at their bank account. Revenue hadn't moved. The sales team was still complaining about lead quality. The cost per acquisition was climbing. Your dashboard showed marketing success. Their P&L showed marketing expense. The metrics were real. The graphs were accurate. But they measured activity, not outcomes. You optimised for numbers that made your reports look good while the business struggled to justify your retainer. That moment when you realise the client doesn't care about your traffic numbers? That's the moment most agencies lose the account. ## Why Your Reports Show Success While Clients Question Value The core problem is simple: marketing reports measure what marketers do, not what businesses need. You track campaigns, channels, and content performance. Clients track revenue, profit margins, and customer acquisition costs. This creates a dangerous disconnect. You're celebrating wins that your client doesn't recognise as valuable. Worse, you're making budget decisions based on metrics that have no proven connection to business outcomes. Three specific issues create this gap. ### Vanity metrics mask real business impact Vanity metrics are numbers that look impressive in isolation but tell you nothing about business performance. Page views. Social media followers. Email open rates. Newsletter subscribers. These aren't useless. They're just not achievements. They're context. Reporting "50,000 page views this month" sounds great until you ask: how many became leads? How many leads became customers? What revenue did those customers generate? Without those answers, the page views are just traffic. Traffic doesn't pay invoices. The same applies to social metrics. Growing from 2,000 to 5,000 followers means nothing if none of them ever buy anything. Email open rates don't matter if nobody clicks through or converts. These metrics work as supporting data. They help explain how you're building awareness or engagement. But when they become the headline achievement in your report, you're celebrating activity instead of results. ### Attribution models credit the wrong channels Last-click attribution is the default in most analytics platforms. It gives 100% of the credit to whatever channel the customer used immediately before converting. This creates a completely distorted picture of what's actually working. Here's what really happens: Someone reads your blog post in January. They see your LinkedIn ad in February. They search your brand name in March and click a Google ad to convert. Last-click attribution gives Google Ads all the credit. So you increase your Google Ads budget and cut content marketing. Revenue drops. You have no idea why. The business consequence is serious. You systematically overinvest in bottom-funnel tactics that capture existing demand while starving the top-funnel channels that actually create that demand. Your reports show Google Ads as your best performer. In reality, it's just the last touchpoint in a journey that started elsewhere. ### Time lag between action and revenue gets ignored Marketing doesn't work on a monthly reporting cycle. Especially for high-value sales or B2B services. You publish content in January. It ranks in February. Someone reads it in March, joins your email list in April, books a call in May, and closes in June. Your January report shows content performance as weak because nothing converted yet. Your June report credits the sales call. This creates pressure to focus on tactics that show immediate results. Quick wins. Bottom-funnel conversions. Anything that makes this month's report look good. The long-term strategy that actually builds sustainable growth gets deprioritised because it doesn't produce numbers fast enough. Then clients lose faith when your short-term metrics don't translate to revenue growth over time. ## The Three Reporting Traps That Create False Narratives Most agencies don't deliberately mislead clients. They fall into reporting patterns that feel like good practice but actually distort reality. These traps are common because they make performance look better without technically lying. That doesn't make them honest. ### The green arrow trap: celebrating increases that don't matter Percentage increases without context are meaningless. "200% increase in Instagram engagement" sounds impressive. Until you realise it means you went from 10 likes per post to 30. This trap trains your team to optimise for growth in irrelevant metrics. You chase percentage increases because they look good in reports, even when the absolute numbers have no business impact. The fix isn't to stop reporting growth. It's to include the actual numbers and business context. "Instagram engagement increased 200% (from 10 to 30 average likes per post). This represents 0.3% of our total lead generation activity." Now the reader can judge whether that growth matters. ### The comparison trap: choosing timeframes that flatter performance Comparing December to January makes everything look like it's declining. Comparing this year to last year's lockdown makes everything look amazing. Both comparisons are technically accurate. Both are misleading. When you shift comparison periods to avoid weak months or highlight strong ones, clients notice. Maybe not immediately, but eventually. And when they do, they stop trusting your entire reporting process. Use consistent timeframes. Month-over-month, quarter-over-quarter, year-over-year. If there's a legitimate reason to change the comparison (seasonality, business changes, market conditions), explain it explicitly. Don't just quietly shift the baseline to make the numbers look better. ### The aggregation trap: hiding poor performance inside averages Averages conceal reality. "Average conversion rate of 3%" tells you nothing about which campaigns are working and which are wasting budget. In reality, one campaign might convert at 8% while three others sit at 1%. The average looks acceptable. The actual performance shows you're burning money on underperformers while underfunding your winner. This prevents you from making good decisions. You can't fix what you can't see. Break down the aggregated data. Show performance by campaign, channel, audience segment, or time period. Let the variation be visible so you can act on it. ## What Honest Reporting Actually Looks Like ![business team collaborative meeting discussing data reports honestly](https://images.pexels.com/photos/1143521/pexels-photo-1143521.jpeg?auto=compress&cs=tinysrgb&h=650&w=940) Photo by veerasak Piyawatanakul on [Pexels](https://www.pexels.com) Honest reporting is harder. It requires deeper integration with client data, more sophisticated analysis, and the courage to show when things aren't working. It's also far more valuable. Here's what it requires. ### Connect metrics directly to client revenue or cost savings Every metric you report should have a clear line to business outcomes. Not marketing activity. Business results. Instead of "generated 500 leads this quarter," report "generated 500 leads, 50 became qualified opportunities, 8 closed for $240,000 in revenue." This requires integration with your client's CRM and sales data. It's more work. It's also the only way to prove your marketing actually matters. Some metrics are leading indicators. They predict future outcomes rather than showing immediate revenue. That's fine. But you need to validate that they actually predict something. If your leading indicator doesn't correlate with eventual conversions or revenue, it's not a leading indicator. It's just another vanity metric. Tools like [Lead Recorder](https://leadrecorder.com) make this easier by tracking the full journey from first touch to conversion, showing you which marketing activities actually drive business results rather than just generating activity. ### Report leading indicators alongside lagging results Lagging metrics show what already happened. Revenue, conversions, customer acquisition cost. Leading metrics predict what will happen. Pipeline value, engagement quality, lead scoring trends. Report both. "Closed $100,000 in new business this month" tells the client what they earned. "Added $400,000 to qualified pipeline" tells them what's coming. This gives confidence that current work will pay off even when immediate results are slow. The key word is qualified. Your pipeline metrics need to be validated as actually predictive. If your "qualified pipeline" converts at the same rate as random traffic, it's not qualified. Track conversion rates by pipeline stage and adjust your definitions until your leading indicators actually predict outcomes. ### Show the full customer journey, not just last-click attribution Map how customers actually move through touchpoints before converting. Show that the organic blog post introduced the brand, the LinkedIn ad created consideration, and the Google search closed the deal. You don't need perfect attribution. Even basic journey mapping is better than last-click only. Use multi-touch attribution if you can. If not, use qualitative research. Ask customers how they found you. Track assisted conversions. Show any context about the full journey. This changes budget decisions. When you see that content marketing assists 60% of conversions even though it only gets last-click credit for 10%, you stop cutting the content budget. When you see that brand awareness campaigns create demand that bottom-funnel tactics capture, you stop treating them as separate initiatives. ## The Conversation That Changes When You Stop Lying to Yourself Remember that quarterly review where the client nodded politely at your traffic numbers before terminating the contract? Here's how it goes differently with honest reporting. You show that traffic increased 40%, but conversion rate dropped 15%. You explain why: the traffic came from a new audience segment that isn't ready to buy yet. You show the pipeline data suggesting they'll convert in 90 days. You propose adjusting the nurture sequence to accelerate that timeline. The conversation shifts from defending metrics to collaboratively solving business problems. The client sees you understand their actual goals. They trust you because you're transparent about what's working and what isn't. Clients don't need you to be perfect. They need you to be honest and strategic. They value transparency and problem-solving over inflated numbers that don't connect to their business reality. Start by auditing your current reports. Where are you celebrating activity instead of outcomes? Where are you using favourable comparisons or hiding poor performance in averages? Where are your metrics disconnected from client revenue? Fix those gaps. Build reports that show the full picture, even when parts of it aren't flattering. Connect your marketing metrics to business outcomes. Show the customer journey, not just the last click. If you need help implementing proper lead tracking that connects marketing activity to actual business results, [Lead Recorder](https://leadrecorder.com) specialises in simple, practical attribution that shows you what's really working without the complexity of enterprise analytics platforms. The agencies that survive aren't the ones with the best-looking dashboards. They're the ones whose clients trust them because their reports tell the truth. --- ## How to Write Client Reports People Read Why 42.86% of clients are unsatisfied with agency reporting, the three questions every report needs to answer, and a minimal structure that works. URL: https://www.leadrecorder.com/blog/writing-client-reports-clients-actually-read Published: 2026-07-27T01:31:12.059Z Nearly half of digital marketing clients aren't happy with the reports they're getting. A survey cited by Vendasta puts the figure at 42.86% of clients in the industry unsatisfied with their agency's reporting — not with results, specifically with the reporting itself. That's a strange thing to lose a client over, given how fixable it is. The usual culprit isn't a lack of data. It's too much of the wrong kind: a GA4 export full of "Session default channel group" and "(not set)," handed to someone who just wants to know if the ads are working. This post covers what a client-facing report actually needs to answer, a minimal structure that covers it, and how to build one in a few minutes with our free lead report generator. The stakes are higher than "annoying export" Client reporting isn't a cosmetic problem. Swydo's analysis of agency churn found retainer-based agencies lose roughly 18% of clients a year, against roughly 42% for project-based agencies — and reporting quality is one of the few retention levers an agency fully controls, independent of campaign performance. A client who can't tell what's working doesn't necessarily blame the results. They blame the agency for not making it clear. What a client actually wants to know Strip away the dashboard and it comes down to three questions, in this order: Which channels are bringing in leads? Not sessions, not impressions — leads. What is each one costing? Cost per lead, not cost per click. Is that better or worse than before? A number without a comparison point is just a number. A raw GA4 or Meta Ads export answers all three, technically — buried inside columns built for an analyst, not a business owner. The translation work is the actual value an agency adds here, not the export itself. Skip the manual translation. Paste your export and get the channel breakdown, cost per lead, and a plain-English summary in one pass. Generate a report now → A minimal structure that covers it You don't need more than this to answer all three questions: Total leads and total spend, up top, in plain numbers. Blended cost per lead — the one number a client will actually remember. A per-channel table: channel, leads, share of total, cost per lead. Sorted by leads, not alphabetically — the important row should be the first one they see. One paragraph in plain English naming the top channel, the cheapest channel per lead, and flagging anything that spent money with nothing to show for it. That last line matters more than it looks. A channel with real spend and zero recorded leads isn't necessarily a bad channel — it might be a tracking problem instead. Calling that out in the report, rather than letting a client assume the channel simply doesn't work, is the difference between a report that builds trust and one that quietly erodes it. Where this stops scaling A CSV-to-summary pass like this is genuinely useful for a one-off — a quarterly business review, a new client's first month, a one-time audit. It doesn't scale as a monthly habit, because it depends on someone remembering to export, paste, and reformat it every single time, for every single client. The alternative isn't a better export. It's not exporting at all. A live, filterable, client-facing lead feed — the source and channel already attached to every lead the moment it comes in — answers the same three questions permanently, without anyone rebuilding a report from scratch each month. Give every client a live view instead of a monthly PDF. Lead Recorder's client share links update automatically, filterable by source and date — no export required. Try Lead Recorder free → Further reading Vendasta: The Ultimate Guide to Client Reporting Swydo: Client Reporting Best Practices Lead Recorder's free lead report generator --- ## What Is Dark Lead Spend? What the real research says about misattributed direct traffic, and the exact, adjustable formula behind our free attribution calculator. URL: https://www.leadrecorder.com/blog/what-is-dark-lead-spend Published: 2026-07-26T23:13:21.896Z "Direct" is the label Google Analytics reaches for when it genuinely doesn't know where a visitor came from. Somewhere along the way — a stripped UTM, a link shared in a private chat, a browser quietly blocking referrer data — the trail went cold, and the visit gets filed under a channel that isn't really a channel at all. When that visitor converts, the lead is real. The story of what actually brought them in is gone. Marketers have taken to calling this dark social, or more broadly, dark lead spend: the ad budget and pipeline value sitting behind conversions whose true source never made it into your reporting. This post covers where the term comes from, what the research actually says about how big the problem is, and the honest way to estimate it for your own numbers — including the exact formula behind our free attribution health check calculator. What the research actually shows Two credible data points are worth knowing, and worth being precise about — a lot of "dark traffic" content online cites vague or unsourced percentages, which defeats the point of an article about trustworthy attribution: Normal direct traffic is a fairly narrow band. Ruler Analytics' guidance is that direct traffic should account for roughly 5–20% of a healthy site's overall sessions. A number well outside that range, in either direction, is worth a second look. Social platforms vary enormously in what they tell analytics tools. A controlled 2023 study by SparkToro and Really Good Data sent 1,113 tracked visits across 11 social networks and 16 sharing types. The result: 100% of visits from TikTok, Slack, Discord, Mastodon and WhatsApp arrived with no referral information at all — Google Analytics simply files them as direct. Facebook Messenger lost 75% of its referral data, Instagram DMs 30%, public LinkedIn posts 14%, and Pinterest 12%. Public posts on YouTube, Facebook, and X/Twitter, by contrast, mostly came through with proper attribution intact. Put together, that's the actual shape of the problem: direct traffic isn't inherently suspicious, but a meaningful and unevenly-distributed slice of it is genuinely mislabeled — and which channels get hidden depends heavily on where your audience shares links. Turn this into a number for your own business. Enter your ad spend, lead count and lead value, and our calculator applies an adjustable version of this logic instantly. Run your attribution health check → The other half: stripped UTMs, not just dark social Dark social explains why certain platforms under-report. A separate, more mundane set of causes explains why "direct" is inflated even for traffic that never touched social media at all: UTMs get dropped in transit. Redirect chains, link shorteners, and some HTTPS-to-HTTP hops strip query parameters before analytics ever sees them. Closed apps don't pass a referrer. A link opened from an email client, a PDF, or a messaging app's in-app browser frequently arrives with no referral information, tagged or not. Browser privacy features intervene. Safari's Intelligent Tracking Prevention and similar mechanisms in other browsers are designed to limit cross-site tracking, and one side effect is a higher rate of sessions landing in direct or unassigned buckets. None of these are analytics platforms being broken. They're doing exactly what they're built to do — report what they can actually observe. The gap is between what's observable and what's true. Turning this into an honest estimate Here's the exact logic behind the calculator, so there's no hidden math: You provide three real numbers you already know: monthly ad spend, monthly leads, and average lead value. You set one assumption: the share of those leads you believe are actually misattributed — a slider defaulting to 20%, at the upper end of Ruler Analytics' normal direct-traffic range, adjustable to whatever your own GA4 direct/(not set) percentage actually shows. The calculator multiplies your lead count by that rate to estimate misattributed leads, then by your lead value to get an estimated dark lead value — and separately applies the same rate to your ad spend, to show how much of your budget's real performance is similarly obscured. That's the whole formula. No hidden multiplier, no invented industry-wide constant presented as fact. It's designed to give you an order of magnitude — enough to know whether it's worth pulling your own GA4 direct traffic report and checking the real number — not a certified measurement. What actually closes the gap A calculator can only ever estimate. Closing the gap for real means capturing the visitor's actual source at arrival and carrying it through to whatever they eventually do — fill a form, book a call, place an order — rather than reconstructing it after the fact from an incomplete session record. That's the specific problem Lead Recorder's lead source tracking is built to solve: the source is attached to the lead itself, so there's no estimate to make. Ready to replace the estimate with an actual answer? Lead Recorder ties every form fill and call back to its real source automatically. Try Lead Recorder free → Further reading SparkToro & Really Good Data: Dark Social Falsely Attributes Web Traffic as "Direct" (2023 study) Ruler Analytics: A Guide to Google Analytics 4 Direct Traffic Lead Recorder's free attribution health check calculator --- ## Why Tracking Scripts Silently Break Where Google and Meta say GTM, GA4 and Meta Pixel should live in your HTML, and the five ordinary events that quietly break tracking. URL: https://www.leadrecorder.com/blog/why-tracking-scripts-silently-break Published: 2026-07-26T22:18:58.522Z Nobody gets paged when a tracking script goes missing. There's no error, no failed build, no red banner in your dashboard — just a slow, quiet drop in the numbers that shows up two or three weeks later as "conversions are down" with no obvious cause. By the time someone thinks to check whether the pixel is actually still there, the data from the gap is already gone for good. The install itself is rarely the problem. Most sites get Google Tag Manager, GA4, or Meta Pixel added correctly once. What breaks is everything that happens afterwards: a theme update, a page builder migration, a cache plugin that decides your script tag looks like something safe to strip. This post covers where these tags are supposed to live, why that placement actually matters, and the ordinary events that knock them loose. If you just want to check a site right now, our free script & pixel checker scans it in a few seconds. Where these scripts are actually supposed to go This isn't a matter of opinion — Google and Meta both publish exact placement guidance: Google Tag Manager: Google's own Tag Manager installation guide says to paste the first container snippet as high in as possible, and the second (noscript) snippet immediately after the opening tag. GA4 (gtag.js): Google's Google tag setup instructions say to place the snippet immediately after the opening tag, on every page — and not to add more than one Google tag to the same page. Meta Pixel: Meta's Pixel setup documentation says the base code goes between the opening and closing tags on every page you want to measure, specifically to reduce the chance of it being blocked and to make sure it executes as early as possible. Three different companies, the same instruction: get it into , and get it there early. Check where yours actually landed. Our free tool fetches any URL and tells you whether GTM, GA4, Meta Pixel and Lead Recorder are in or further down the page. Scan a site now → Why "in the head" isn't just tidiness A script sitting lower in the page, or injected late by a plugin after the rest of the DOM has already loaded, has less time to do its job before a visitor acts. That matters most for exactly the traffic you're paying to acquire: someone who clicks a paid ad, glances at a slow-loading landing page, and leaves within a second or two. If the tag hasn't registered yet, that visit — and whatever it would have told you about which ad, keyword, or channel brought them — never gets recorded at all. It also compounds. GTM specifically warns against adding more than one Google tag to a page; a second container or a duplicate GA4 tag left behind by an old integration doesn't just double up harmlessly; it can cause its own conflicts and inflate or corrupt the numbers you're trying to trust. Five ordinary ways tracking scripts come loose Theme or template migrations. A new theme, a page builder switch, or a "modernised" header template often gets rebuilt from a generic starting point — and whatever custom script was hand-pasted into the old header isn't part of that template. The "custom code" field gets migrated away from. Site builders that offer a header/footer code injection box sometimes deprecate or relocate that setting during a platform update. The script is still saved somewhere in the account, just no longer rendering on the live page. Performance and caching plugins. Minifiers, deferred-script loaders, and "remove unused JavaScript" optimisations are built to be aggressive. A script tag they don't recognise as essential is an easy target for delay or removal, especially on WordPress sites running multiple performance plugins at once. Consent management platforms, misconfigured rather than working correctly. Blocking marketing tags until a visitor consents is correct, compliant behaviour. It becomes a bug when the CMP keeps blocking a tag after consent is granted, or blocks it site-wide by default with no path to ever load. A second agency or freelancer adds a second container. Without a shared record of what's already installed, it's common for a new developer to add their own GTM container or GA4 tag alongside an existing one nobody remembered was there. How to actually verify it, instead of assuming Each platform has its own first-party way to check installation directly, and they're worth knowing about even outside of a one-off scan: GTM Preview mode — built into Tag Manager itself, shows exactly which tags fired on a given page load, in real time. Meta Pixel Helper — an official Chrome extension from Meta that checks pixel installation and flags common errors as you browse. GA4's own troubleshoot tag setup guide — Google's walkthrough for diagnosing why a GA4 tag isn't showing data. Our script & pixel checker — the fastest way to check whether a tag is present at all and whether it's sitting in , without opening dev tools. None of these replace the others. Browser extensions confirm a tag fires on the page you're currently viewing; a URL scanner confirms what's actually in the HTML source across any page you want to check, including ones you don't have open. Using both catches more than relying on either alone. The gap no pixel checker can close Even a perfectly placed GTM container, GA4 tag, and Meta Pixel only tell you a session happened — not whether that visitor became a lead. Connecting a page view to an actual form fill, phone call, or booking, potentially several visits later, is a separate problem from "is the script installed." That's the part Lead Recorder's lead source tracking is built for: one script tag that stays attached to the visitor from first click through to conversion, so there's no separate pixel install to babysit and no silent gap to discover three weeks late. Want tracking that tells you when something's wrong, instead of staying quiet? Lead Recorder ties every form fill and call straight back to its source — one script tag, nothing extra to maintain. Try Lead Recorder free → Further reading Google: Install a web container (Tag Manager Help) Google: Install your Google tag with a website builder or CMS Meta: Meta Pixel — Get Started Google: Troubleshoot GA4 tag setup Lead Recorder's free script & pixel checker --- ## UTM Parameters Explained: The Complete Guide What each UTM parameter does, why case sensitivity fragments GA4 reports, and a naming convention that scales past one person. URL: https://www.leadrecorder.com/blog/utm-parameters-guide Published: 2026-07-24T05:27:23.349Z Most marketers build a UTM link the same way: paste the page URL into a note, tack on ?utm_source= by hand, guess at the medium, and send it. It takes thirty seconds and it works — right up until someone checks the reports three weeks later and finds "google" and "Google" sitting in separate rows, half the clicks logged as (not set), and a campaign nobody can find because it was tagged three different ways by three different people. UTM parameters are simple in theory. In practice, they're one of the easiest places for attribution data to quietly break — and because nothing throws an error when it happens, most teams don't notice until the numbers stop making sense. This guide covers what each parameter actually does, why case and consistency matter more than people think, and a naming convention you can put in place today. If you just want to build a clean link right now, our free UTM builder handles the formatting for you. What UTM parameters actually track A UTM (Urchin Tracking Module) parameter is just a query string tacked onto a URL. When someone clicks a tagged link, the values ride along and show up in your analytics platform's traffic source reports. There are five standard parameters, though you'll rarely need all five on the same link: utm_source — where the traffic is coming from: google, newsletter, linkedin. utm_medium — the general channel type: cpc, email, paid-social, organic-social. utm_campaign — the specific promotion or initiative: spring-sale-2026, webinar-launch. utm_term — mainly for tagging paid search keywords. utm_content — differentiates two links pointing at the same source, medium and campaign, e.g. a header CTA versus a footer CTA in the same email. Google's own guidance on custom campaign URLs is explicit that the first three should always travel together: "When you add parameters to a URL, you should always use utm_source, utm_medium, and utm_campaign." Leave one out and that traffic typically shows up as (not set) in your reports instead of being attributed to anything useful — the data isn't lost exactly, it's just stripped of the context that would have made it actionable. Skip the manual tagging. Our free UTM builder auto-formats source, medium and campaign for you, with quick-fill presets for Google Ads, Meta, LinkedIn and email. Build a clean UTM link → The mistake that quietly fragments every report: case sensitivity UTM parameter names are case-insensitive — UTM_SOURCE and utm_source both work at the URL level. The values you put in them are a different story. Google Analytics 4 treats utm_source=Facebook and utm_source=facebook as two entirely separate sources, each getting its own row in every report. Tag one campaign's links as Email and another's as email, and you've split a single channel's performance in two without any warning that it happened. This is worth repeating because it's so easy to miss: nothing in Google Analytics tells you when this happens. Your traffic acquisition report will simply show two rows where there should be one, and unless you're specifically looking for near-duplicate source names, it reads as noise rather than a bug. The practical fix is boring but effective — pick lowercase, hyphenated values as your default and stick to them across every campaign and every team member building links. It's the single highest-leverage UTM habit you can adopt, which is why our builder auto-lowercases and hyphenates by default. A naming convention that survives more than one campaign Most UTM problems aren't really tagging problems — they're the absence of a shared standard. Here's a simple framework that holds up once more than one person is building links: Lowercase, hyphenated, no spaces or special characters. utm_campaign=black-friday-2026, not Black Friday 2026!. Fixed vocabulary for utm_medium. Agree on a short list up front — cpc, email, paid-social, organic-social, referral, sms — and don't let people invent new ones per campaign. This is the field where "email" vs. "e-mail" vs. "newsletter" does the most damage. Campaign names that sort and search well. Leading with a date or quarter (2026-q3-webinar) makes campaigns easy to find and compare later, rather than relying on memory for what "spring-push" referred to. Keep a shared log. A simple spreadsheet or doc listing every campaign name in use stops the same promotion from being tagged five different ways by five different people. It doesn't need to be fancy — it just needs to be the one place everyone checks before creating a new link. Before and after Three people tagging the same autumn email promotion without a convention often ends up looking like this: utm_source=Newsletter&utm_medium=Email&utm_campaign=Autumn Sale utm_source=newsletter&utm_medium=email&utm_campaign=autumn_promo utm_source=email&utm_medium=newsletter&utm_campaign=Autumn-Sale-2026 Three tagged links, three different sources, three different mediums, three different campaign names — all describing the same email send. With a shared convention, that becomes one consistent set across every link: utm_source=newsletter&utm_medium=email&utm_campaign=autumn-sale-2026. Common UTM mistakes worth checking your own links for Tagging internal links. Adding UTMs to links between your own pages resets the session's original source in some setups, which can make a paid visitor look "organic" or "direct" by the time they convert two pages later. Using utm_medium for the platform instead of the channel type. utm_medium=facebook tells you nothing about whether that traffic was paid or organic — that's what utm_source is for. Keep medium to the channel type (paid-social, organic-social) and source to the platform (facebook). Re-tagging a link that's already live. Changing the UTMs on a URL that's already been shared (in a printed ad, an old email, a pinned social post) fragments that campaign's history instead of correcting it. No record of what's already been tagged. Without a shared log, duplicate or inconsistent campaign names creep in every time a new person builds a link. Forgetting the trio entirely on "quick" links. Source-only or medium-only tags still show up, but with incomplete context — usually landing as (not set) for whatever's missing. Clean UTMs won't fix everything — here's what else causes "direct" traffic Even with perfect tagging discipline, UTMs only cover links you control. A meaningful share of the traffic showing up as (direct) or (none) in your reports never had a chance to carry a UTM in the first place: Stripped referrers. Redirect chains, link shorteners, and some HTTPS-to-HTTP transitions drop referrer information before your analytics tool ever sees it. Untagged links in closed environments. A link pasted into an email client, a PDF, a Slack message, or a WhatsApp chat typically doesn't pass a referrer at all, regardless of whether it had UTMs. Multi-session journeys. Someone clicks a tagged ad, doesn't convert, and comes back two days later by typing your domain from memory or a saved bookmark — the UTM from the first visit is gone unless something on your side is capturing and holding onto it. That last one is where UTM tagging alone runs out of road. A tagged link tells you what brought someone to your site for a single session — it doesn't do anything to connect that source to a form fill, phone call, or booking that happens later, potentially across multiple visits. That's the gap Lead Recorder's lead source tracking is built to close: it captures the source on arrival and holds onto it until the visitor actually converts, so the lead itself — not just the session — carries the attribution. Try the builder, then automate the rest A consistent naming convention and a decent UTM builder solve the tagging half of this problem. The other half — knowing which of those tagged visitors actually turned into a lead — is a tracking problem, not a tagging one. Want every form fill automatically tied to the UTM that brought it in? Lead Recorder captures a visitor's source the moment they land and attaches it to the lead when they convert — no manual tagging or spreadsheet required. Try Lead Recorder free → Further reading Google: Custom campaign URLs (official documentation) Google's own Campaign URL Builder HubSpot: What are UTM tracking codes? Lead Recorder's free UTM builder — the auto-lowercasing, preset-driven version of everything above --- ## How to Find Which Google Ads Keywords Make You Money Hitting conversion targets isn't the same as making money. How to find which Google Ads keywords actually turn a profit, not just volume. URL: https://www.leadrecorder.com/blog/google-ads-keywords-make-money Published: 2026-07-23T22:05:06.301Z # How to Find Out Which Google Ads Keywords Actually Make You Money You're optimising for conversions. Your campaign manager is hitting conversion targets. The dashboard looks healthy. But here's the uncomfortable question: are those conversions actually making you money? Most paid search managers never find out. They optimise for conversion volume or cost per acquisition, assuming that more conversions equals more profit. It doesn't. A keyword that converts beautifully might attract customers who never pay, churn immediately, or generate revenue that doesn't cover the ad spend. This guide walks you through the shift from conversion-based to revenue-based keyword optimisation. You'll learn how to connect your Google Ads data to actual dollars earned, identify which keywords are profit engines, and reallocate budget accordingly. This isn't theory. It's tactical work for campaign managers who want to stop optimising blind. ## Why Most Campaign Reports Hide Your Real Winners ![person analyzing data dashboard on computer screen](https://images.pexels.com/photos/3862610/pexels-photo-3862610.jpeg?auto=compress&cs=tinysrgb&h=650&w=940) Photo by ThisIsEngineering on [Pexels](https://www.pexels.com) Standard Google Ads reports show you clicks, conversions, and cost per acquisition. They don't show you which keywords generate revenue. That's not a criticism of Google Ads—the platform is designed for conversion tracking, not revenue attribution. But it creates a dangerous blind spot. You might have a keyword converting at 8% that looks like a winner in your reports. But if it attracts low-value customers who churn or don't pay, it's draining your budget. Meanwhile, a low-volume keyword with a 2% conversion rate might be generating customers worth five times as much. Your reports won't tell you this. The result? High-converting keywords get more budget. Profitable keywords get starved. Your campaign optimises itself towards volume, not value. ### The conversion trap: when high-converting keywords lose you money Here's a concrete example. You're running ads for a software subscription. A broad keyword like "project management tool" converts at 8%. Looks great. But those customers are tyre-kickers. They sign up for the free trial, use it for a week, and cancel. Average customer value: $40. Your cost per acquisition: $65. You're losing $25 per conversion. But your campaign reports show this as a winning keyword because it converts well. Research shows that [broad, high-volume keywords often attract non-buyers](https://www.paradigm-il.com/why-seo-traffic-doesnt-always-convert-into-revenue/), even when they convert. They pull in people who are browsing, not buying. Optimising for conversion rate or conversion volume sends more budget to these money-losing terms. ### What you're actually optimising for (and why it matters) There's a fundamental difference between optimising for conversions and optimising for revenue. Conversions measure actions. Revenue measures outcomes. When you optimise for conversions, you're asking: which keywords get people to take action? When you optimise for revenue, you're asking: which keywords bring in customers who actually pay? Revenue-per-keyword is the metric that aligns ad spend with business outcomes. It tells you which keywords are worth bidding on and which ones are burning money. As research confirms, [success should be measured by revenue impact](https://www.paradigm-il.com/why-seo-traffic-doesnt-always-convert-into-revenue/), not just rankings or conversions. ## Connect Your Google Ads Data to Actual Revenue You can't optimise for revenue if you're not tracking it at keyword level. This is the foundational step. It requires setup work, but it pays off in decision-making clarity. There are three methods to connect ads to revenue data. Which one you use depends on your business model and how quickly revenue is realised after the initial conversion. ### Set up conversion value tracking (not just conversion counting) Google Ads can track conversion values, not just conversion counts. This means passing the actual transaction value into Google Ads so each conversion has a dollar amount attached. For e-commerce, this is straightforward. You pass the order value dynamically. Someone buys $200 worth of products, Google Ads records a $200 conversion. Someone else buys $50 worth, it records $50. Now you can see which keywords generate high-value purchases versus low-value ones. For lead generation, it's trickier but still doable. You assign a fixed value to each lead based on historical close rates and average deal size. If 20% of leads close at an average value of $2,000, each lead is worth $400. Not perfect, but better than treating all leads as equal. The limitation: this only works for immediate revenue. If your leads take weeks or months to close, conversion value tracking won't capture the full picture. ### Import offline conversion data for leads that close later Offline conversion imports solve the delayed revenue problem. You upload closed deals back into Google Ads with the GCLID (Google Click Identifier) to attribute revenue to the original keywords. Here's how it works. Your CRM tracks which leads close and for how much. You export that data with the GCLID and revenue amount. You import it into Google Ads. Now Google Ads knows that the keyword someone clicked three weeks ago generated a $5,000 sale. This is especially powerful for B2B or high-ticket sales. Research shows that [a 25% increase in leads resulted in $50,000 in monthly revenue](https://www.linkedin.com/top-content/sales/sales-conversion-rates/seo-impact-on-sales-conversion-rates/) for one business. Offline conversion imports reveal which keywords drove that revenue, not just which ones drove the leads. If you're struggling with the technical setup, Lead Recorder specialises in connecting ad data to actual revenue outcomes. We help businesses implement tracking that shows which keywords make money, not just which ones get clicks. ### Tag keywords with CRM data to see which ones produce paying customers UTM tagging or keyword-level tracking in your CRM lets you identify which keywords generate customers who actually pay, not just sign up. You tag each keyword with a unique identifier. When someone converts, that tag follows them into your CRM. Weeks or months later, when they become a paying customer (or don't), you can trace it back to the original keyword. This is critical for subscription businesses or B2B. The initial conversion is just the start. You need to know which keywords bring in customers who stick around, upgrade, or generate high lifetime value. CRM analysis by keyword source reveals these patterns. ## Run the Numbers: Calculate Revenue Per Keyword This is where tracking setup pays off. You can now see which keywords make money. The goal is to find patterns, not just one-off winners. ### Pull keyword-level revenue reports (the metrics that actually matter) You need four metrics: cost per keyword, conversions per keyword, revenue per keyword, and revenue per conversion. In Google Ads, go to your search terms report or keyword report. Enable the conversion value columns. Now you can see revenue alongside cost and conversions. Why each metric matters: cost tells you what you're spending. Conversions tell you volume. Revenue tells you what you're getting back. Revenue per conversion tells you customer quality. Together, they reveal which keywords are profitable and which ones are burning budget. ### Calculate ROAS by keyword, not just by campaign The formula is simple: revenue from keyword divided by cost of keyword equals keyword-level ROAS (return on ad spend). Example: Keyword A costs $500 and generates $2,000 in revenue. That's a 4:1 ROAS. Keyword B costs $300 and generates $200 in revenue. That's a 0.67:1 ROAS. You're losing money on Keyword B. Campaign-level ROAS hides these differences. Your campaign might show a healthy 2:1 ROAS overall, but that's because Keyword A is subsidising Keyword B. Without keyword-level analysis, you keep funding losers. ### Spot the pattern: what your profitable keywords have in common Sort your keywords by ROAS. Look at the top 10 to 20. What do they have in common? You're looking for patterns in intent signals, specificity, product or service type, and funnel stage. High-ROAS keywords are often specific and transactional. They include product names, problem descriptions, or buying signals. Research confirms that [specific, high-intent keywords with lower volume often convert better](https://www.paradigm-il.com/why-seo-traffic-doesnt-always-convert-into-revenue/) than broad terms. They attract people who know what they want and are ready to buy. These are your profit engines. ## Reallocate Budget Based on What You Found ![business person adjusting budget allocation spreadsheet](https://images.pexels.com/photos/6694492/pexels-photo-6694492.jpeg?auto=compress&cs=tinysrgb&h=650&w=940) Photo by Tima Miroshnichenko on [Pexels](https://www.pexels.com) You've identified winners and losers. Now act on it. This is about shifting spend, not necessarily increasing it. ### Kill keywords that convert but don't pay back Look for keywords with decent conversion rates but low revenue per conversion or negative ROAS. These are the conversion traps. Example: a keyword converts at 5%, but the average customer value is $50 while your cost per acquisition is $80. You're losing $30 per conversion. This keyword is a money pit. Pause it or reduce bids significantly. Don't delete immediately—your data might be incomplete—but stop feeding it budget. ### Double down on low-volume keywords with high revenue per conversion These are often overlooked because they don't drive much traffic. But each conversion is highly profitable. Increase bids. Expand match types slightly. Create dedicated ad groups for these terms. Give them room to grow. Research shows that [transactional, specific keywords can increase qualified leads](https://www.linkedin.com/top-content/sales/sales-conversion-rates/seo-impact-on-sales-conversion-rates/) even if overall traffic drops. ### Test similar keywords to your winners (not just higher volume versions) Find keywords with similar intent or characteristics to your proven revenue drivers. Not broader versions—similar ones. Use keyword research tools to find related terms. Test them in small batches. Monitor closely. The trap is chasing volume. Focus on replicating the intent and specificity of your winners. ## Make This Your Monthly Ritual, Not a One-Off Audit Keyword profitability shifts. Competition changes. Seasonality hits. Customer behaviour evolves. What worked last quarter might not work this quarter. Set a monthly review cadence. Pull revenue reports. Recalculate ROAS. Adjust bids and budgets. This isn't a one-time fix. It's ongoing optimisation based on real financial outcomes. Revenue visibility is your competitive advantage. Most advertisers still optimise blind to actual profit. They chase conversions and hope for the best. You're looking at the numbers that matter. Research confirms that [aligning ad data with CRM and sales pipeline guides efforts towards real sales](https://www.linkedin.com/top-content/sales/sales-conversion-rates/seo-impact-on-sales-conversion-rates/), not just leads. Ready to stop guessing which keywords make you money? Lead Recorder helps businesses implement revenue tracking that connects ad spend to actual outcomes. Get in touch if you need expert help making this shift. --- ## Why Small Businesses Waste 40% of Marketing Budget Roughly 40% of small business marketing spend delivers nothing. What to track instead so you can tell which 40% before you spend it again. URL: https://www.leadrecorder.com/blog/small-businesses-waste-marketing-budget Published: 2026-07-20T22:05:11.732Z # Why Most Small Businesses Waste 40% of Their Marketing Budget (And What to Track Instead) You're spending money on marketing every month. Some of it works. A lot of it doesn't. And if you're like most small business owners, roughly 40% of what you spend delivers absolutely nothing. This isn't about being careless. You're busy running the actual business. Marketing happens in the gaps between serving customers, managing staff, and keeping the lights on. The problem is that marketing costs keep ticking over whether they're working or not. The good news? You don't need complex analytics software or a marketing degree to fix this. You need 15 minutes a week and three simple numbers. That's it. ## The 40% Problem: Where Your Marketing Money Actually Goes Let's say you're spending $1,000 a month on marketing. Google Ads, Facebook, maybe a directory listing or two, some Instagram promotion. Seems reasonable for a small business. Here's what actually happens: about $600 of that delivers customers. The other $400 just evaporates. It goes to campaigns you set up six months ago and forgot about. Ads that used to work but stopped performing in February. Subscriptions that auto-renewed when you weren't looking. A Facebook campaign for last Christmas that's still running because nobody turned it off. Take a café spending $800 monthly. They've got Google Ads from when they first opened, a Facebook page they post to daily, and three directory listings. The Google Ads bring in customers. The directories do nothing. Facebook gets likes but zero bookings. That's $320 a month achieving nothing except looking busy. This happens because you're focused on the business, not the marketing dashboard. And that's exactly how it should be. The problem isn't you. It's that marketing keeps charging your card whether it's working or not. ## The Three Black Holes Eating Your Budget ![frustrated small business owner looking at credit card statement laptop](https://images.pexels.com/photos/5900089/pexels-photo-5900089.jpeg?auto=compress&cs=tinysrgb&h=650&w=940) Photo by www.kaboompics.com on [Pexels](https://www.pexels.com) Money disappears in three specific ways. These aren't obvious mistakes. They're sneaky problems that hide in plain sight on your credit card statement. ### Campaigns You Forgot You're Still Paying For Open your business credit card statement right now. Count how many marketing charges you recognise. Chances are, there's at least one you'd forgotten about. Google Ads from 2024 when you were testing search traffic. A Facebook campaign promoting a winter special that ended four months ago. A directory listing that auto-renewed in January. This happens because you set it up once, put the card on file, and moved on. No reminder pops up asking if you still want it. The charge just keeps appearing every month, blending in with everything else. The fix isn't complicated. Look at the statement. If you don't immediately remember setting something up, pause it today. You can always turn it back on if you realise it was actually working. ### Channels That Look Busy But Deliver Nothing Instagram shows you 500 followers. Facebook says your post reached 1,200 people. Google Ads reports 340 clicks this month. Great numbers. But how many actual customers did those channels deliver? A plumber might post daily on Instagram, get decent engagement, and feel like it's working. Then you ask: when did Instagram last bring in a job? The answer is often never, or maybe once six months ago. This is the vanity metrics trap. Activity looks like success. Likes feel like progress. But if nobody's calling or booking, those numbers mean nothing for your business. Social media isn't useless. But if you're spending time or money on it, you need to know whether it's actually bringing in work. Engagement without customers is just noise. ### The 'Set and Forget' Tax Marketing that worked brilliantly in 2024 might be bleeding money in 2026. Algorithms change. Your competitors start bidding on the same keywords. The audience that used to click your ads moves to a different platform. What delivered customers 18 months ago can quietly stop working without you noticing. It's like leaving the heater on when you've left for work. Costs money. Delivers zero benefit. And you only notice when you check the bill. You don't need to monitor this constantly. But you do need to check regularly enough to catch when something stops working. That's where the 15-minute weekly routine comes in. ## Why Most Tracking Solutions Make Things Worse Google Analytics exists. So do marketing dashboards, conversion tracking pixels, and attribution software. They're powerful tools built for marketing teams with time to learn them. You're not a marketing team. You're a business owner who also handles marketing between everything else. These tools overwhelm because they show you everything. Traffic sources, bounce rates, session duration, conversion funnels, user journeys. Hundreds of data points when you just need to know: is this working or not? The result is paralysis. Too much data, no clear action, so nothing changes. You keep spending on the same channels because figuring out what to cut feels harder than just leaving it alone. The tools aren't bad. They're just wrong for someone juggling customer service, operations, and marketing simultaneously. You need something simpler. ## The 15-Minute Weekly Check That Stops the Bleeding ![business person checking calendar planner weekly routine](https://images.pexels.com/photos/7428220/pexels-photo-7428220.jpeg?auto=compress&cs=tinysrgb&h=650&w=940) Photo by cottonbro studio on [Pexels](https://www.pexels.com) Every week, same time, 15 minutes. That's the routine that catches waste before it compounds. Think of it like checking your car's oil. Takes a few minutes. Prevents expensive problems. Becomes automatic once you build the habit. This isn't about becoming a marketing analyst. It's about noticing when money stops working and doing something about it quickly. ### What to Track (Just Three Numbers) You need three numbers each week: **Total marketing spend this week.** Check your business credit card or bank statement. Add up everything that went to marketing. Google, Facebook, directories, whatever you're using. **New enquiries or customers this week.** Count your phone calls, emails, bookings, or walk-ins. However customers reach you, count them. Don't overthink it. **Cost per customer.** Divide total spend by new customers. If you spent $250 and got 10 customers, that's $25 per customer. That's it. Three numbers. No spreadsheet required, though you can use one if you want. The point is tracking these weekly so you spot problems immediately, not three months later when you've already wasted hundreds. Tools like [Lead Recorder](https://leadrecorder.com) can automate this tracking if you want to remove the manual work, but even a simple note on your phone works fine. ### How to Spot a Money Drain in Under 5 Minutes Here's the decision rule: if a channel hasn't delivered a customer in four weeks, pause it this week. Not delete. Pause. You can test it again later if you want. But right now, it's costing money and delivering nothing. You might worry: what if I pause something that was about to work? Fair question. But if it hasn't worked in a month, another week probably won't change that. And you can always unpause it next week if you change your mind. The goal isn't perfection. It's stopping obvious drains quickly. A campaign that's genuinely working will show results within four weeks. If it hasn't, your money is better spent elsewhere or saved entirely. ## Your First 40% Back ![small business owner smiling relief success financial recovery](https://images.pexels.com/photos/5934226/pexels-photo-5934226.jpeg?auto=compress&cs=tinysrgb&h=650&w=940) Photo by Gustavo Fring on [Pexels](https://www.pexels.com) Do this today: review last month's credit card statement. Find one marketing charge you'd forgotten about or one campaign that hasn't delivered a customer in weeks. Pause it. That's real money back in your business. Even recovering 20% of wasted budget adds up fast. For a business spending $1,000 monthly, that's $200 back every month. $2,400 a year. Then start the 15-minute weekly check. Same time each week. Track your three numbers. Pause anything that's not working. It's not glamorous, but it works. If you want help setting up proper tracking without the complexity, [Lead Recorder](https://leadrecorder.com) specialises in simple lead tracking that shows you exactly which marketing channels deliver customers. No analytics degree required. Stop the bleeding first. Then you can think about growing. --- ## 5 Simple Attribution Tools for Teams Under 50 Five attribution tools built for teams without a data analyst or a six-figure budget, for anyone under 50 people who just needs to know what's working. URL: https://www.leadrecorder.com/blog/simple-attribution-tools-teams-under-50 Published: 2026-05-29T22:05:18.929Z # 5 Simple Attribution Tools That Actually Work for Teams Under 50 You don't need enterprise-grade attribution software. You need something that tells you which channels are actually bringing in leads without requiring a data analyst to interpret the results. Most attribution platforms are built for companies with dedicated analytics teams, six-figure marketing budgets, and the patience to spend three months on implementation. If you're running a team under 50 people, that's not your reality. Here are five tools that actually fit how smaller teams work, what they cost, and when each one makes sense. ## Why Most Attribution Tools Are Built for Teams You're Not ![small business team meeting collaboration](https://images.pexels.com/photos/7710139/pexels-photo-7710139.jpeg?auto=compress&cs=tinysrgb&h=650&w=940) Photo by Alena Darmel on [Pexels](https://www.pexels.com) Enterprise attribution platforms assume you have someone who can build custom dashboards, manage API integrations, and translate complex data models into actionable insights. They're designed for organisations where marketing ops is a full-time role. When you're under 50 people, you need attribution that works within your existing workflow. You don't have time to learn a new platform every quarter or troubleshoot tracking scripts that break when your developer pushes an update. The gap isn't about features. It's about implementation time, ongoing maintenance, and whether the tool actually answers the questions you're asking. Most enterprise platforms can tell you everything. You just need to know which three channels are worth your budget. ## What 'Simple' Actually Means (And Why It Matters at Your Size) Simple doesn't mean basic. It means you can get useful data without hiring someone to manage the tool. For teams your size, simple attribution should give you: - Clear visibility into which channels are generating leads, not just traffic - Setup that takes days, not months - Reports you can actually use in weekly meetings without translation - Integration with the CRM or tools you already use If you're spending more time managing your attribution tool than using the insights it provides, it's not simple. It's just another thing to maintain. ## Google Analytics 4 with Custom Channel Groupings ![google analytics 4 dashboard interface](https://images.pexels.com/photos/577195/pexels-photo-577195.jpeg?auto=compress&cs=tinysrgb&h=650&w=940) Photo by Lukas Blazek on [Pexels](https://www.pexels.com) GA4 gets a bad reputation because most people use it exactly as it comes out of the box. That's a mistake. ### What it tracks without extra setup GA4 automatically captures traffic sources, user behaviour, and conversion events once you've installed the tracking code. You'll see organic search, paid ads, direct traffic, referrals, and social media as separate channels. The default reports show you where people come from and what they do on your site. That's useful, but it doesn't tell you which channels are actually generating leads or sales. ### The one configuration that makes it useful for small teams Custom channel groupings let you reorganise how GA4 categorises your traffic. Instead of seeing "Organic Social" as one bucket, you can split Facebook, LinkedIn, and Instagram into separate channels. This matters because not all social traffic performs the same way. LinkedIn might drive qualified leads while Instagram brings awareness traffic. Without custom groupings, you're making budget decisions based on averages that hide what's actually working. Set this up once, and your reports become immediately more useful. You'll see which specific channels deserve more budget and which ones are wasting it. ### When you'll outgrow it GA4 struggles when you need to track leads across multiple touchpoints or connect online behaviour to offline conversions. If someone fills out a form after visiting your site three times from different sources, GA4 will only credit the last click. You'll outgrow it when you need to prove that your content marketing is working even though it rarely gets last-click credit, or when you're running campaigns across multiple channels and need to understand how they work together. ## HockeyStack ![marketing analytics dashboard on laptop screen](https://images.pexels.com/photos/577195/pexels-photo-577195.jpeg?auto=compress&cs=tinysrgb&h=650&w=940) Photo by Lukas Blazek on [Pexels](https://www.pexels.com) HockeyStack is built for B2B teams who need to connect marketing activity to pipeline without building custom reports every week. ### Why it works for teams juggling multiple channels Most small teams run a mix of paid ads, organic content, email, and maybe some events or partnerships. HockeyStack tracks all of it in one place and shows you how these channels influence each other. It captures the full customer journey, not just the last click. If someone discovers you through a blog post, returns via a LinkedIn ad, and converts after an email, you'll see all three touchpoints and their contribution to the conversion. This is particularly useful when you're trying to justify budget for channels that don't get last-click credit but clearly influence buying decisions. ### The reporting view that saves hours each week The multi-touch attribution dashboard shows you exactly which channels are assisting conversions, not just closing them. You can filter by date range, campaign, or customer segment without building custom reports. This saves time because you're not exporting data from five different platforms and trying to piece together what happened. Everything's already connected. ### Pricing reality check HockeyStack starts around $1,200 per month. That's not cheap for a team under 50, but it's reasonable if you're spending $10,000+ monthly on paid media and need to prove which channels are actually working. If your marketing budget is under $5,000 per month, this is probably overkill. You need attribution, but not at this price point. ## Attributer.io Attributer.io solves one specific problem: capturing source data when someone fills out a form on your website. ### How it captures source data you're currently losing When someone submits a form, you usually capture their name, email, and maybe their company. You don't capture where they came from unless you're using UTM parameters perfectly across every campaign. Attributer.io automatically adds source data to every form submission. It tracks the channel, campaign, landing page, and referrer, then passes that information directly into your CRM as hidden form fields. This means you can finally answer questions like "How many leads came from organic search last month?" or "Which LinkedIn campaign is generating the most qualified leads?" without manually tagging everything. ### The CRM integration that makes it worth it Attributer.io integrates with most major CRMs including Salesforce, HubSpot, and Pipedrive. The source data flows directly into your contact records, so your sales team can see exactly how each lead found you. This is valuable when sales asks "Where did this lead come from?" and you can give them a real answer instead of guessing based on the email domain. If you're already using a CRM and struggling to connect leads back to their source, this integration alone justifies the tool. For teams looking for even simpler lead tracking that works straight out of the box, [Lead Recorder](https://leadrecorder.com) offers a streamlined alternative focused specifically on capturing and organising lead source data without complex setup. ### Best fit scenario Attributer.io works best for teams that generate most of their leads through website forms and need that data in their CRM. If you're doing a lot of offline conversions, phone calls, or in-person sales, it won't capture those touchpoints. Pricing starts around $180 per month, which makes it accessible for smaller teams who need basic attribution without enterprise complexity. ## Ruler Analytics Ruler Analytics is designed for teams that need to track both online and offline conversions, particularly phone calls. ### What makes it different from the others Most attribution tools focus exclusively on digital conversions. Ruler tracks form submissions, live chat, and phone calls, then connects all of them back to the original marketing source. This matters if you're in an industry where people research online but convert over the phone. Without call tracking, you're missing a huge part of your attribution picture. ### The phone call tracking feature that closes the loop Ruler uses dynamic number insertion to show different phone numbers to visitors from different sources. When someone calls, it automatically logs which campaign, keyword, or channel drove that call. The data flows into your CRM and analytics platforms, so you can see phone conversions alongside form submissions and other digital conversions. This gives you a complete view of what's actually driving revenue, not just what's driving form fills. ### When the price makes sense Ruler starts around $300 per month for basic plans. It makes sense when phone calls represent a significant portion of your conversions and you need to prove which marketing channels are generating them. If most of your conversions happen through forms or online checkout, you probably don't need the call tracking features and can use a simpler tool. ## Hyros Hyros is built specifically for teams running aggressive paid media campaigns who need accurate tracking despite iOS updates and cookie restrictions. ### Why paid media teams choose this over the others Standard pixel-based tracking has become increasingly unreliable. Hyros uses a combination of server-side tracking and AI-powered attribution to maintain accuracy even when browser-based tracking fails. If you're spending heavily on Facebook, Google, or YouTube ads and your conversion tracking feels increasingly inaccurate, Hyros is designed to solve that specific problem. ### The AI tracking that actually works Hyros uses AI to match conversions back to ad clicks even when traditional tracking pixels fail. It analyses patterns in user behaviour, device switching, and conversion timing to attribute sales more accurately than pixel-only tracking. This isn't marketing AI hype. It's a practical solution to the reality that browser-based tracking is breaking down and you need a different approach to maintain visibility into what's working. ### The commitment required Hyros requires both financial and time commitment. Pricing starts around $1,500 per month, and implementation takes longer than most other tools on this list. It makes sense when you're spending $20,000+ monthly on paid ads and need precise attribution to optimise your campaigns. If your paid media budget is smaller, the cost doesn't justify the benefit. ## Pick Based on What You're Actually Trying to Prove ![business decision making strategy planning](https://images.pexels.com/photos/9034261/pexels-photo-9034261.jpeg?auto=compress&cs=tinysrgb&h=650&w=940) Photo by RDNE Stock project on [Pexels](https://www.pexels.com) The right attribution tool depends on what you need to prove and how much you're willing to spend to prove it. Start with GA4 if you're just getting serious about attribution and need basic channel visibility. Move to Attributer.io or Lead Recorder when you need source data flowing into your CRM. Consider HockeyStack when you're running multi-channel campaigns and need to understand how they work together. Choose Ruler if phone calls matter. Pick Hyros if you're spending heavily on paid ads and standard tracking isn't cutting it. The worst choice is picking a tool because it has the most features. The best choice is picking the one that answers your specific questions without requiring a data team to interpret the results. If you're still not sure which tool fits your situation, [Lead Recorder](https://leadrecorder.com) can help you implement straightforward lead tracking that actually works for teams your size. No complexity. Just clear visibility into where your leads come from.