
Event Design: The Foundation of Product Analytics
Great products measure what matters. Most teams get this backwards - they track everything, hoping insights emerge from chaos. They won't.
๐ซ Why Most Analytics Fail
Event instrumentation acts as your product's GPS, guiding you through user behavior patterns, pain points, and success indicators. Unfortunately, many teams fall into two common traps.
๐๏ธ The "Track Everything" Pitfall: Some teams obsessively record every user interaction - clicks, hovers, scrolls, you name it. This turns their data warehouse into a digital junkyard where valuable insights get buried under mountains of useless information. Meanwhile, engineering teams burn precious time maintaining events nobody uses.
๐ The "Shallow Metrics" Mistake: Other teams focus on superficial numbers - basic page views, generic click rates, and vanity metrics that look good in presentations but offer zero insight into real user value or product success.
The end result? Teams drown in data while starving for insights. But don't worry - there's a smarter approach ahead.
โ
๐ฏ Starting with KPIs: The Only Way Forward
Great analytics start with clarity about what matters. Let's look at Spotify as an example of tracking what really counts:
- ๐ต Songs played to completion (engagement)
- ๐ Playlists created (investment)
- โญ Artists followed (long-term retention)
- โญ๏ธ Songs skipped (negative signal)
Each event ties directly to user value and business growth. Nothing is tracked without purpose.
This clarity guides every aspect of their analytics. Now, let's dive into the building blocks you need to implement this approach.
โ
๐ Core Events That Matter
Think of events as your product's vital signs. Each type reveals something crucial about your product's health.
๐ Success Events: Capturing Value
Success events capture moments when users extract real value from your product. Let's take Uber as an example:
- ๐ Ride completed (core value delivered)
- ๐ค Driver successfully matched (key milestone)
- ๐ณ Payment processed (transaction success)
Unlike vanity metrics, these events represent complete units of value delivery. They answer key questions:
- ๐ฏ Did the user achieve their goal?
- โจ Was value successfully delivered?
- โ Did the key transaction complete?
Each success event should directly relate to a business outcome or user need. For Netflix, it's not just "video played"โit's "show completed." For Spotify, it's not "music started"โit's "song played to completion."
Think of success events as your product's finish lines. They tell you not just that users showed up but that they accomplished what they came to do.
But value doesn't appear from nowhere. Users follow paths to reach these moments.
๐บ๏ธ Intent Events: Understanding the Journey
Intent events map the journey users take before reaching success. While success events show the destination, intent events reveal how users get there.
Let's look at a food delivery app flow:
- ๐ Restaurant menu opened
- ๐ Item added to cart
- ๐ Delivery address entered
- ๐ณ Payment method selected
Each step signals clear user intent. By tracking these breadcrumbs, you can:
- ๐ Spot where users drop off
- ๐ง Identify friction points
- ๐งฉ Understand decision patterns
For Spotify, intent might look like:
- ๐ Search for artist
- ๐ Browse playlist
- โถ๏ธ Click song preview
- ๐ฟ Open album details
These events show progression toward the success event of playing a whole song.
The key is tracking meaningful progression, not every click. Each intent event should represent a clear step toward your success metrics, and each abandonment signals friction. But sometimes, users hit walls.
โ ๏ธ Failure Events: Spotting Problems Early
Think of failure events as your product's warning lightsโthey illuminate problems before they become crises.
For an e-commerce app, some failure events might be:
- โ Payment declined
- ๐ Out-of-stock notification
- ๐ Cart abandonment
- ๐ Search with zero results
Each signals a specific type of friction. For Netflix, it might be:
- โ ๏ธ Playback errors
- ๐ฅ Failed downloads
- ๐บ Quality downgrades
- โณ Loading timeouts
The key is identifying failures that prevent value delivery. Not every error is a failure event - focus on those that block key user outcomes.
Good failure tracking requires clear triggers. A user trying multiple payment methods suggests friction, and a cart abandoned after repeated errors reveals a problem pattern.
Systematically monitoring these signals allows you to catch issues before they impact your core metrics. But tracking them alone doesn't tell the whole story.

โ
๐ Properties: The Building Blocks of Analytics Intelligence
Event properties are the secret sauce that transforms raw data into actionable insights. Let's dive into how they help us understand user behavior in depth.
๐ The Key Questions Properties Answer
๐ค The Why Behind User Actions
- Why do shopping carts get abandoned?
- Why do certain features become user favorites?
- Why does engagement fluctuate across user segments?
๐ The How of User Behavior
- How do users explore your product?
- How do different user groups behave?
- How does context influence decisions?
๐ฏ Real-World Example: Netflix
Let's see how Netflix uses properties to understand their viewers:
- ๐ฌ Content category: Comedy, Drama, Action, etc.
- ๐ Content ID: Unique show/movie identifier
- ๐บ Content Name: Show or movie title
These properties enable teams to:
- ๐ฏ Create meaningful user segments
- ๐ Identify viewing patterns
- ๐ก Find optimization opportunities
- ๐ฑ Measure feature success
๐๏ธ The Three Types of Properties
1๏ธโฃ Action Properties: Capturing User Choices
Think of these as the "what they did" properties. For a ride-sharing app:
- ๐ Vehicle type chosen
- ๐บ๏ธ Route preferences
- ๐ณ Payment method selected
๐ซ Why They Matter:
- ๐ Reveal preferences by location and time
- ๐ Show usage patterns across segments
- ๐ฏ Highlight areas for improvement
2๏ธโฃ Contextual Properties: The When and Where
These capture the environment around each action. Using Uber as an example:
- ๐ Available drivers nearby
- ๐ฐ Current surge pricing
- ๐ฆ๏ธ Weather conditions
- โฐ Time of request
These properties help teams:
- ๐ Understand booking patterns
- ๐ง Identify friction points
- ๐ก Make smarter business decisions
3๏ธโฃ User Properties: Understanding Your Audience
These create a complete picture of who your users are:
๐ฅ Demographics
- Age and gender
- Location and language
- Time zone preferences
๐ฑ Account Details
- Subscription level
- Account age
- User permissions
๐ฏ Behavior Patterns
- Purchase history
- Usage frequency
- Feature adoption
๐จ Personal Preferences
- Custom settings
- Interests
- Personal goals
๐ก Putting It All Together
The magic happens when you combine these properties. For example:
๐ฌ Netflix's Approach:
- ๐ Demographics: Viewing by region
- ๐ณ Account: Subscription patterns
- ๐บ Behavior: Watch time trends
- โค๏ธ Preferences: Genre favorites
๐โโ๏ธ Strava's Strategy:
- ๐ Location tracking
- โญ Membership status
- ๐ Exercise patterns
- ๐ฏ Fitness objectives
Remember: Great analytics isn't just about collecting data - it's about telling meaningful user stories through thoughtfully designed properties. ๐โจ
๐ท๏ธ The Art of Analytics Naming: A Clear Guide
Your analytics system is only as good as its naming conventions. Let's explore how to create a naming system that makes your data tell clear stories! ๐
๐ฏ Why Great Names Matter
Think of your analytics like a well-organized library. Poor naming creates chaos, while good naming illuminates insights.
Common naming pitfalls to avoid:
- ๐ Inconsistent variations ("Signup" vs "User Signed Up" vs "Sign up")
- โฐ Time wasted decoding cryptic events
- โ Data misinterpretation by teams
- ๐ Tracking inconsistencies over time
๐จ The Object-Action Framework
Here's a simple yet powerful way to name your events:
๐ฆ Objects (What Users Interact With)
- Product
- Account
- Playlist
- Document
- Message
๐ฌ Actions (What Users Do)
- Viewed
- Created
- Shared
- Added
- Downloaded
๐ก Pro Naming Tips
1๏ธโฃ Event Names
Use Noun + Verb in Title Case:
- โ "Video Played"
- โ "Order Completed"
- โ "play_video"
- โ "OrderedProduct"
Keep Language Clear:
- โ "Payment Failed"
- โ "Search Completed"
- โ "Txn_Error"
- โ "QueryEndpoint_Hit"
2๏ธโฃ Property Names
Choose Your Style:
- ๐ snake_case: payment_method, user_type
- ๐ช camelCase: paymentMethod, userType
Be Specific:
- โ duration_seconds
- โ payment_method_type
- โ duration
- โ type
๐ฏ Property Values
Keep them clear and consistent:
๐ Finite Options
- ๐ณ payment_method: ["credit_card", "paypal", "apple_pay"]
- ๐ค user_type: ["free", "premium", "enterprise"]
๐ Open Values
- ๐ search_term: Any string
- โฑ๏ธ view_duration: Integer in seconds
๐ Best Practices
- ๐ Document Everything: Maintain a comprehensive event dictionary
- ๐ฎ Think Ahead: Structure data for future analysis needs
- ๐ฑ Start Small: Begin with core events and grow gradually
- ๐งช Test Thoroughly: Verify all events fire correctly
โ
๐ฏ Smart Property Design: Your Guide to Better Analytics
๐ค Here's the truth about client-side tracking: being selective matters more than being comprehensive.
๐ฐ Rule #1: Keep Revenue Events Server-Side
โ ๏ธ Never trust client-side tracking for revenue. Here's why:
- ๐ซ Ad blockers can block tracking
- ๐ก Network issues can lose events
- ๐ Users can tamper with client data
Instead, follow these golden rules:
- ๐ Track all money server-side
- โ Double-verify every transaction
- ๐ Log both attempts and successes
- ๐ Keep audit trails clean
๐ฏ Rule #2: Be Strategic With Client-Side Properties
๐ค Let's get smart about what we track!
Keep your properties lean and purposeful:
- โจ Always include:
- ๐ Unique identifiers (playlist_id, user_id)
- ๐ Key join keys for data warehouse
- ๐ Critical analysis properties
- โญ๏ธ Skip what you can calculate:
- โฑ๏ธ Duration (calculate in Looker)
- ๐ Derived metrics
- ๐ Aggregated data
- ๐ค Ask before adding properties:
- ๐ Can we join this data later?
- ๐ ๏ธ Can we derive this in our BI tools?
- ๐ Is this truly needed for analysis?
- ๐ก Will this property drive decisions?
๐ญ Remember: Every property adds weight. Keep them light, keep them valuable.
๐ Rule #3: Document Everything
๐ Tools might version automatically, but documentation is key:
- ๐ Keep a clear event changelog
- ๐ค Note why changes happened
- ๐ Track impact on dashboards
- ๐ข Alert relevant teams
๐ก Pro tip: Future you will thank present you for detailed documentation!
๐งช Rule #4: Test Like Your Data Depends On It
โ ๏ธ Bad data is worse than no data. Test everything:
- โ Verify event firing
- ๐ Validate all properties
- ๐ Check for duplicates
- ๐ Monitor volumes daily
โก Set up alerts for:
- ๐ Sudden volume changes
- โ Missing properties
- ๐ Unusual patterns
- โ ๏ธ Failed events
๐ฏ Remember: Implementation isn't just coding - it's building a reliable system for understanding your product.
๐๏ธ Building Your Analytics Foundation
๐ฎ Analytics isn't just about collecting data - it's about understanding your users through a clear lens.
โจ Your event design should be:
- ๐ฏ Purposeful, not comprehensive
- ๐ Focused, not scattered
- ๐ก Insightful, not just informative
๐ Start with what matters. Track what drives value. Ignore the rest.
๐ซ Remember: You're not just building a data warehouse - you're creating a system of understanding. That's how amazing products are built!
โ
โ