How to Build a Customer Acquisition Dashboard in Mixpanel
Customer acquisition is the most expensive function in most SaaS companies, and most teams have shockingly little visibility into which channels actually produce valuable customers versus which just produce signups. Mixpanel's event-based analytics model is ideal for acquisition dashboards because it tracks the full journey from first touch through activation, connecting channel attribution to downstream behavior.
A good acquisition dashboard answers three questions: where are users coming from, what percentage convert through each funnel stage, and which channels produce users who stick around? This guide walks through building a Mixpanel dashboard that connects acquisition spend to user quality, not just user volume.
Step-by-step guide
Instrument acquisition tracking events with channel attribution
Ensure your Mixpanel implementation captures the utm_source, utm_medium, utm_campaign, and referrer properties on every first-touch event. The most reliable approach is to capture UTM parameters at page load, store them in a cookie or localStorage, and attach them to the signup event as super properties. This attribution data is the foundation of every acquisition chart. Without it, you are measuring totals with no channel breakdown.
- Capture UTM parameters from the URL on first page load
- Store attribution in a cookie that persists across sessions
- Set UTM values as Mixpanel super properties so they attach to all subsequent events
Build a channel-level acquisition funnel
Create a Funnels report with the steps: Landing Page Viewed, Signup Started, Account Created, Onboarding Completed, and First Core Action Taken. Break down by utm_source to see how each channel performs at every stage. This reveals whether a channel's weakness is top-of-funnel (people do not sign up) or activation (people sign up but do not activate). Each problem has a different solution.
Create a weekly new user trend broken down by channel
Add an Insights report showing the count of Account Created events per week, broken down by utm_source. This trend chart shows whether each channel is growing, flat, or declining over time. Overlay a total line to see overall acquisition trends. Set the date range to the last 12 weeks to capture enough history for trend detection without diluting recent patterns with old data.
Add retention curves per acquisition channel
Create a Retention report with Account Created as the initial event and any core usage event as the return event. Break down by utm_source. This is the chart that separates vanity metrics from real performance. A channel might produce 1000 signups per month but if week-4 retention is 5%, those users cost more than they are worth. Compare retention curves to identify which channels produce users who stick.
Build a cost efficiency table with manual data
Create a table view showing each channel's total signups, activation rate, 30-day retention rate, and cost per activated user. Since Mixpanel does not ingest ad spend data natively, add a custom property or use a manual lookup table. The critical metric is Cost Per Activated User (ad spend divided by activated users), not Cost Per Signup. This reframes acquisition efficiency around users who actually generate value.
- Pull signup and activation counts per channel from Mixpanel
- Add weekly ad spend data per channel from your ad platforms
- Calculate Cost Per Activated User as spend divided by activated users
Assemble the dashboard and share with the growth team
Create a Mixpanel Board and add all the reports: channel funnel, weekly new user trend, retention by channel, and the cost efficiency table. Arrange them in order of decision importance — the cost efficiency table at the top (where should we spend), the funnel in the middle (where do we lose people), and trends at the bottom (how are things changing). Share the board with your growth and marketing team and set it as the default agenda item for weekly acquisition reviews.
Common mistakes
Optimizing for signups instead of activated users
A channel that produces 500 signups with 5% activation is worse than one that produces 100 signups with 40% activation. If your dashboard only shows signup volume, you will over-invest in channels that bring low-quality traffic. Always tie acquisition metrics to downstream activation and retention.
Not capturing UTM parameters on the signup event
If UTM parameters are only on the page view event but not the signup event, you cannot break down the signup funnel by channel. Capture attribution at first touch and persist it through to the signup event using super properties or user properties.
Ignoring organic and direct traffic channels
Many acquisition dashboards focus only on paid channels because they have clear UTM tags. Organic search, direct traffic, and word-of-mouth often produce the highest-quality users but show up as none or direct in attribution. Track and analyze these channels rather than ignoring them.
Tips
Use Mixpanel's user profile properties to store the original acquisition channel so you can analyze channel quality months after signup, not just at conversion time.
Create a saved cohort for high-quality signups (users who activated within 7 days) and analyze which channels produce the highest proportion of this cohort.
Add a first-session depth metric (pages viewed in first session) as an early signal of acquisition quality before you have enough retention data.
Set up a Mixpanel alert for when any channel's weekly signup volume drops below a threshold so you catch ad platform issues or landing page regressions quickly.
How Vantage helps
Vantage integrates analytics context into product planning so that when you are building features to improve acquisition (referral programs, onboarding flows, landing page experiments), the PRD includes real data about current channel performance and conversion rates, grounding product decisions in actual numbers.