Building a Single Customer View Without a Data Warehouse
Every marketing team wants a single customer view: one place where you can see a customer's full history across your website, CRM, email, advertising platforms, and sales interactions. It sounds simple. In practice, it is the project that has consumed more enterprise budgets, caused more vendor disappointments, and generated more abandoned initiatives than almost anything else in marketing technology.
The standard advice is to build a data warehouse, implement a customer data platform, and hire a data engineering team to maintain it all. For large enterprises with dedicated data teams and seven-figure technology budgets, that is reasonable. For the mid-market businesses that make up the majority of the Australian economy, it is not.
The customer data platform market is projected to grow at a 23% CAGR through 2031, with large enterprises accounting for 63% of current spend. But small and medium enterprises are the fastest-growing segment, expanding at nearly 24% year over year. The market is responding to mid-market demand, but many of the solutions are still priced and scoped for enterprise buyers.
This article covers practical approaches to building a usable single customer view without enterprise-scale infrastructure, using tools and methods that are accessible to businesses with lean teams and moderate budgets.
What a Single Customer View Actually Requires
Before diving into solutions, it helps to define what "single customer view" means in practical terms. At its core, it requires three things:
- Identity resolution: The ability to recognise that the person who filled out a form on your website, received an email from your CRM, clicked a Google Ad, and called your sales team is the same individual.
- Data unification: Bringing data from multiple systems into a format where it can be queried or viewed together, even if the underlying systems remain separate.
- Activation: Using that unified view to make better marketing decisions: more relevant targeting, more personalised communication, more accurate measurement.
The enterprise approach handles all three with a centralised data warehouse and a CDP sitting on top. The mid-market approach handles them with a combination of native integrations, lightweight data tools, and strategic process design. The destination is the same. The infrastructure is different.
Start with What You Already Have
Most mid-market businesses already have the pieces of a single customer view scattered across their existing tools. The problem is not a lack of data. It is that the data lives in silos that do not talk to each other.
A typical mid-market marketing stack includes:
- CRM: HubSpot, Salesforce, Pipedrive, or similar. Contains contact details, deal history, sales interactions, and lifecycle stage.
- Email/marketing automation: Often built into the CRM (HubSpot, ActiveCampaign) or separate (Mailchimp, Klaviyo). Contains email engagement data, campaign history, and behavioural triggers.
- Web analytics: GA4. Contains website behaviour, traffic sources, conversion events, and engagement data.
- Advertising platforms: Google Ads, Meta Ads, LinkedIn Ads. Contain campaign performance, audience data, and conversion tracking.
- Accounting/billing: Xero, MYOB, or similar. Contains transaction history and revenue data.
The first step is not buying a new tool. It is mapping what data exists in each system, what the common identifiers are (email address is almost always the primary key), and where the most valuable connections would be. A simple spreadsheet documenting each system, its key data fields, and its available export or integration options is a more useful starting point than any technology evaluation.
Approach 1: Maximise Native Integrations
Before introducing any new technology, exhaust the integration capabilities of your existing tools. Modern SaaS platforms have extensive native integration ecosystems, and many of the most valuable data connections can be established without any middleware.
CRM as the Central Hub
Your CRM is the natural centre of gravity for a mid-market single customer view. It already stores contact-level data and supports custom fields, making it the logical place to aggregate information from other systems.
- HubSpot to GA4: HubSpot's native GA4 integration passes form submission data, page views, and CRM contact properties to analytics. You can see which GA4 user IDs map to known CRM contacts.
- CRM to Google Ads: Upload customer lists for Customer Match targeting. Import offline conversions back into Google Ads to close the loop between ad clicks and CRM outcomes like closed deals.
- CRM to Meta: Upload customer lists for Custom Audience targeting. Use the Conversions API to send CRM events (like a deal being marked as won) back to Meta for conversion optimisation.
- CRM to accounting: Connect Xero or MYOB to your CRM to attach revenue data to contact records. This lets you calculate actual customer lifetime value rather than estimated deal values.
With these integrations in place, your CRM becomes a hub where you can see, for any given contact: how they found you, what content they engaged with, which ads they responded to, where they are in the sales process, and how much revenue they have generated. That is a functional single customer view, built entirely from native integrations.
Approach 2: Lightweight Data Pipelines
When native integrations do not cover a connection you need, lightweight data pipeline tools can bridge the gap without requiring a data warehouse.
Zapier and Make (Integromat)
These no-code automation platforms can move data between systems based on triggers. When a new deal is created in your CRM, push the contact and deal value to a Google Sheet that serves as your unified reporting layer. When a form submission arrives, enrich the CRM record with UTM parameters captured from the form.
The limitation is scale. Zapier and Make work well for event-driven data movement (something happens, trigger an action) but are not designed for bulk data synchronisation or complex transformations. They are ideal for connecting the last mile between systems that do not have native integrations.
Google Sheets as a Lightweight Data Layer
This sounds unsophisticated, and it is. But for many mid-market businesses, a well-structured Google Sheet that pulls data from multiple sources via native connectors, Zapier triggers, or manual exports can serve as a surprisingly effective unified view.
The key is structure. Define a consistent schema: one row per customer, with columns for each data source's key fields. Use email address as the primary key for matching. Automate data ingestion where possible, and schedule manual refreshes for sources that do not support automation.
A Google Sheet is not a data warehouse. It will not handle millions of rows or complex joins. But for a business with thousands of customers rather than millions, it can provide 80% of the value of a CDP at approximately 0% of the cost.
GA4 BigQuery Export
GA4 offers free BigQuery export, and BigQuery's free tier includes 1TB of query processing per month. For mid-market businesses, this is a powerful option. You get raw, event-level analytics data in a queryable database, which you can join with CRM exports, advertising data, and transaction records.
BigQuery is not a full data warehouse in the enterprise sense, but it can function as one for marketing data. If you have someone on your team who can write basic SQL (or who is willing to learn), GA4 plus BigQuery gives you analytical capabilities that were genuinely enterprise-only five years ago.
Approach 3: The Composable CDP
If your needs have outgrown spreadsheets and Zapier but a full CDP is beyond your budget, a composable approach can fill the gap. Instead of buying one monolithic platform, you assemble the CDP functions from specialised tools:
- Data collection: GA4 (web behaviour), your CRM (contact data), and platform APIs (advertising data).
- Data storage: BigQuery (free tier) or a lightweight cloud database.
- Identity resolution: A combination of email matching across systems and GA4's User-ID feature for web-to-CRM linking.
- Activation: Google Ads Customer Match, Meta Custom Audiences, and CRM-based email segmentation, all fed from your unified data layer.
- Orchestration: A tool like Census, Hightouch, or Rudderstack (all offer free or low-cost tiers) to sync data from your storage layer to your activation platforms.
This composable approach costs a fraction of a traditional CDP (often under $500 per month for the additional tooling) and gives you genuine identity resolution, unified data, and activation capabilities. The trade-off is that it requires more technical setup and ongoing maintenance than a managed platform.
Solving Identity Resolution Without a CDP
Identity resolution, matching the same person across different systems, is the hardest part of building a single customer view. Enterprise CDPs use probabilistic and deterministic matching algorithms, device graphs, and third-party identity data to solve this.
For mid-market businesses, a simpler approach works:
Email as the Universal Key
Email address is the single most reliable identifier across marketing systems. Your CRM stores it. Your email platform uses it. Google Ads Customer Match accepts it. Meta Custom Audiences accept it. GA4 can associate it with a user ID when someone submits a form.
The practical implementation: when someone submits a form on your website, capture their email address and pass it (hashed, for privacy) to GA4 as a user property. This links their anonymous browsing history to a known identity. From that point forward, you can connect their web behaviour to their CRM record, their ad interactions, and their transaction history.
UTM Discipline
Consistent UTM tagging on all marketing links ensures that when a contact arrives in your CRM via a form submission, you know exactly which campaign, channel, and content piece drove them there. This is not identity resolution in the technical sense, but it solves the attribution problem that most mid-market businesses actually need answered: which marketing activity is generating our best customers?
CRM-Based Stitching
If your CRM supports custom objects or relational data (HubSpot, Salesforce), you can create connections between contact records and data from other systems. Import advertising cost data at the campaign level, link it to the contacts who arrived via those campaigns, and calculate true cost per acquisition from first touch to closed deal.
What to Avoid
- Buying a CDP before you have clean data: A CDP that ingests dirty, inconsistent data from poorly maintained systems will produce a dirty single customer view. Fix your data quality first. Standardise naming conventions in your CRM, clean up duplicate records, and ensure consistent UTM tagging across campaigns.
- Trying to unify everything at once: Start with the two or three data connections that would have the highest impact on your marketing decisions. For most businesses, that is CRM plus web analytics plus one advertising platform. Add more sources incrementally once the foundation is working.
- Over-engineering the solution: A mid-market business with 5,000 customers does not need the same infrastructure as a retailer with 5 million. Match the complexity of your solution to the scale of your data and the capacity of your team to maintain it.
- Ignoring data freshness: A unified view that updates weekly is useful for strategic decisions but not for real-time personalisation. Be realistic about what data freshness your use cases actually require, and design accordingly.
- Neglecting privacy: Unifying customer data increases your obligations under privacy law. Ensure you have appropriate consent for the data you are collecting, that personal data is handled securely, and that customers can request access to or deletion of their information across all connected systems.
A Practical Starting Point
If you are starting from scratch, here is a sequence that works for most mid-market businesses:
- Map your data landscape: Document every system that holds customer data, what fields it contains, and what integration or export options it supports. This takes half a day and saves months of misdirected effort.
- Clean your CRM: Deduplicate contacts, standardise field values, and establish naming conventions. Your CRM is going to be the hub, so it needs to be trustworthy.
- Connect CRM to GA4: Implement User-ID tracking so that form submissions link web behaviour to known contacts. Enable the BigQuery export for raw data access.
- Close the ad-to-CRM loop: Set up offline conversion imports for Google Ads and the Conversions API for Meta. This connects ad spend to actual business outcomes in your CRM, not just website conversions.
- Build a unified reporting layer: Whether it is a Google Sheet, a Looker Studio dashboard pulling from BigQuery, or a lightweight BI tool, create a single view that combines web behaviour, CRM stage, advertising spend, and revenue. This is your operational single customer view.
- Iterate: Add data sources, refine your identity resolution, and expand your activation use cases as your confidence and capability grow.
Good Enough Is Better Than Perfect
The enterprise vision of a single customer view, where every interaction across every channel is captured in real time in a centralised platform, is powerful. It is also unnecessary for most mid-market businesses. What you need is a connected view that answers your most important questions: which marketing is working, which customers are most valuable, and where should you invest next.
That connected view can be built incrementally, using the tools you already have, at a fraction of the cost of an enterprise CDP. Start small, focus on the connections that matter most, and expand as the value becomes clear.
If you need help designing a data strategy that connects your marketing systems without enterprise-scale investment, our analytics team works with mid-market businesses across Australia to build practical measurement frameworks. For businesses looking to connect their data strategy with demand generation, we can help you turn unified customer data into more effective campaigns.
