← Back to blog

GA4 Conversion Tracking for Real Estate Agent Websites: What Actually Predicts a Listing Appraisal Booking

22 August 2026·5 min read
Quick answer: Pageviews won't tell you which marketing books an appraisal — you need GA4 events for the moments that matter: appraisal form submits, click-to-calls, property enquiry submits. Name them consistently, mark them as key events, and link them to Google Ads and Meta so spend gets credited to the channel that actually produced the lead, not just the click. Do this once and your ad reporting stops lying to you. 📈

Here's what nobody tells agency principals when their website goes live: Google Analytics tells you almost nothing useful out of the box. It'll happily report 4,200 visits to your listings page last month, but not whether those visitors came from a boosted post, Google Ads, or SEO — or which of those turned into an actual phone call or appraisal request. We've rebuilt this setup for enough Gold Coast agencies now to know it's almost never in place, and it's the single biggest gap between "our website gets traffic" and "our website makes us money." 💖

What most real estate websites get wrong

  • Treating "contact us" as one bucket — appraisal requests, buyer enquiries and job applications mix together, so you can't isolate what predicts a listing.
  • Never marking events as key events — GA4 records a submit as an ordinary event forever without it reaching conversion reporting or Google Ads.
  • Relying on GA4's default "form_submit" event — it fires on any form on the site, including newsletter signups, so it can't isolate appraisal intent.
  • No phone click tracking — "click to call" is often the highest-intent action on a listing page, and most agency sites don't track it.
  • Conversions never linked to the ad platform — even when the event exists, it's rarely imported into Google Ads or Meta, so spend keeps optimising towards clicks instead of appraisals.
The copy-paste GA4 event checklist for real estate sites

Set these up as GA4 events (via GTM or gtag) using these exact names:

  • appraisal_form_submit — the submit confirmation, not the click.
  • property_enquiry_submit — the listing enquiry form, kept separate from appraisals.
  • click_to_call — any tel: link click, with a parameter for page/agent.
  • rent_appraisal_submit — property management sites, kept separate from sales appraisals.
  • book_appraisal_click — the CTA click that leads to the form, a useful micro-conversion.

Mark appraisal_form_submit, property_enquiry_submit, click_to_call and rent_appraisal_submit as Key Events in GA4 Admin. Then import each into Google Ads as a conversion action, and build matching custom conversions in Meta Events Manager.

Solo residential agent, Broadbeach: Running Google Ads plus a monthly boosted post, both looked equal on clicks before tracking was fixed. Once appraisal_form_submit and click_to_call were set up as key events and imported into Google Ads, it was clear Google Ads produced 4x the appraisal requests per dollar — the boosted posts were driving likes, not appraisals. Budget shifted within a month.
Multi-agent agency, Broadbeach/Mermaid Beach: Twelve agents, one shared site, each with a "book an appraisal with [name]" form. Adding a custom parameter — agent_name — to appraisal_form_submit and click_to_call let the principal see appraisal volume per agent's own marketing instead of one lumped number, and settled an actual argument about whose listings were driving enquiry.
Property management team, Robina: A leasing team's site mixed owner rental appraisals, tenant enquiries and maintenance requests into one inbox and one GA4 "contact" event. Separating rent_appraisal_submit from tenant_enquiry_submit meant the BDM could finally report new-managements pipeline separately from tenant volume — the number the business actually gets paid to grow.

How to actually set this up (without a developer)

  • Map your intents first. List every action that means "this person might list, rent, or enquire" versus general browsing. That list becomes your event names.
  • Build triggers in Google Tag Manager. A form submit trigger on the confirmation element (not just "form submitted," which can fire on validation errors) pushes appraisal_form_submit to the dataLayer; a click trigger on any tel: href handles click_to_call.
  • Send events to GA4 and mark them as Key Events in GA4 Admin → Events. This is the step almost everyone skips, and it's what makes an event usable for conversion reporting.
  • Link to Google Ads via GA4 Admin → Google Ads Links, then import the key events as conversion actions.
  • Set up Meta separately — GA4 events don't flow there automatically. Install the Pixel and build matching custom conversions, then test everything in GA4 DebugView before trusting it.
💡 Don't count the click as the conversion. A click_to_call event only tells you someone tapped a number — not that the call connected or turned into a genuine enquiry. If phone leads matter, pair it with a call tracking number that logs duration, so you can filter 8-second hang-ups from real conversations before deciding which campaign to scale.

Mistakes to avoid once tracking is live

  • Firing the form event on page load, not submit — counts everyone who scrolled past the form as a "conversion," inflating numbers and wrecking Google Ads' optimisation.
  • Forgetting to exclude internal/staff traffic — your own team testing the form all month quietly pollutes the data.
  • Never checking DebugView — tags can look correct in GTM preview and still silently fail to fire live.
  • Using one event name for sales and rental appraisals — you'll never separate the two businesses in reporting again once merged.

Frequently asked questions

Will this tell me exactly which Facebook ad produced a specific phone call?

Not fully, and it's worth being honest about that. GA4 and Meta can reliably tell you someone who arrived via a specific ad clicked your tel: link. Whether that click became a real, qualified conversation depends on your phone system, which GA4 alone can't see. If phone volume matters, a call tracking number gets you the rest of the way.

Do I need Google Tag Manager, or can I do this with gtag.js directly?

Either works. GTM is usually easier to maintain without a developer, since triggers are editable visually rather than through code. If your site already has gtag.js events wired up, no need to migrate — the event names and Key Event setup matter more than which method fires them.

How long before I can trust the data enough to shift ad budget?

Give it three to four weeks of consistent traffic, longer over a quiet patch. Real estate enquiry volume is lumpy — one big listing can skew a week's numbers — so resist reallocating spend off a single week of data.

What about buyers who enquire on a listing rather than requesting an appraisal?

Track them as their own event (property_enquiry_submit) rather than lumping them in with appraisals. Buyer enquiries and vendor requests come from different marketing and convert on different timelines — merging them makes both numbers less useful.


Keep reading 🤍

Share
Written by
Kate, founder of Chronically Online

I help Gold Coast and Brisbane businesses grow with branding, websites and marketing that actually works.

Work with me ✦