Phong Trang

Vehicle Buyers' Behavior Analytics: Data-Driven Search Optimization

By Phong Trang - Software Product Manager - thanhphong.trang@gmail.com

Vehicle Buyers Behavior Analytics Banner

ℹ️ Executive Summary

  • Role: Product Analyst | Industry: Automotive E-commerce | Scope: 112 global markets
  • Key Impact:
    • Drove 12% improvement in online order completion through data-driven search optimization
    • Reduced search performance latency by 25% through error handling optimization
    • Prepared 7,400 clean queries enabling GenAI shopping assistant development
  • Technical Stack: SQL Python Databricks Power BI GA4 DAX
  • Portfolio Artifacts: GitHub Code | Interactive Dashboard | Case Study

🎯 Business Context

When our automotive e-commerce platform launched a new semantic search feature across 112 global markets, stakeholders needed rapid insights to optimize performance. The challenge was immediate: 15% of sales records contained NULL values across regions, creating gaps in our ability to measure revenue impact accurately.

The business couldn't wait for perfect data. Decisions needed to be made within days to determine whether to continue investing in the new search experience or revert to the previous system.

My Role

As Product Analyst, I supported business and engineering teams by:


πŸ”§ The Data Engineering Challenge

Problem: Missing Sales Data

Approximately 15% of sales records had NULL values across product-region combinations. This wasn't uniformly distributedβ€”some markets like Sweden had pristine data quality, while emerging markets showed significant gaps.

Solution: Dual-Track Approach

Rather than choosing between speed and accuracy, I implemented both:

The Technical Implementation

-- Regional-product averaging approach for NULL handling WITH regional_product_avg AS ( SELECT region, product_id, AVG(sales_value) as avg_sales FROM sales_data WHERE sales_value IS NOT NULL GROUP BY region, product_id ), sales_enriched AS ( SELECT s.order_id, s.region, s.product_id, s.search_term, s.sales_value, r.avg_sales as regional_product_avg, COALESCE(s.sales_value, r.avg_sales) as sales_value_clean FROM sales_data s LEFT JOIN regional_product_avg r ON s.region = r.region AND s.product_id = r.product_id ) SELECT * FROM sales_enriched;

Outcome & Transparency

The approach delivered:

Key Learning: Transparency about data limitations builds trust. Every analysis included clear documentation of what was solid versus what relied on heuristics, enabling stakeholders to make informed decisions.


πŸ“Š Behavioral Analytics Framework

Data Sources Integration

Source Data Type Volume
GA4 Customer search behavior events 10,000+ events/day
Snowflake Order completion & sales data Real-time sync

MECE Metrics Framework

I established a Mutually Exclusive, Collectively Exhaustive framework aligning product objectives with measurable KPIs. This framework ensured consistent measurement across 112 markets and reduced metric misinterpretation across engineering, UX, and product teams.

Metrics Framework

Product Usage Metrics

  • Sessions initiating search
  • Search submission types (default, keyword box, auto-suggestion)
  • Search refinement patterns

Engagement Metrics

  • Engagement rate: (Result clicks / Search sessions)
  • Click position distribution
  • Zero-result searches identifying content gaps

Business Impact Metrics

Analysis Implementation

import pandas as pd # Load GA4 search behavior data from Databricks search_events = spark.sql(""" SELECT user_pseudo_id, event_date, search_term, search_result_count, event_name, event_label FROM ga4_events WHERE event_category = 'global search' """).toPandas() # Calculate engagement metrics engagement_metrics = search_events.groupby('event_date').agg({ 'user_pseudo_id': 'nunique', 'search_term': 'count', 'search_result_count': 'mean' }).rename(columns={ 'user_pseudo_id': 'unique_users', 'search_term': 'total_searches', 'search_result_count': 'avg_results_returned' }) # Zero-result analysis for content gap identification zero_results = search_events[ search_events['search_result_count'] == 0 ].groupby('search_term').size().sort_values(ascending=False)

Key Insights Delivered


πŸ“ˆ Business Intelligence Dashboards

I designed a 3-page executive dashboard translating complex behavioral data into clear, actionable insights for C-level and product stakeholders.

Page 1: Executive Overview

Executive Dashboard

Page 2: Behavioral Deep-Dive

Behavioral Dashboard

Page 3: Search Query Categories

Queries Dashboard

Technical Architecture

GA4 (Behavioral Data) ──────┐ β”œβ”€β”€> Databricks ETL ──> Curated Tables ──> Power BI Snowflake (Order Data) β”€β”€β”€β”€β”€β”€β”˜

πŸ“Š Results & Impact

Business Impact

12% improvement in online order completion achieved in 2 sprints

Infrastructure Impact

25% reduction in search latency (800ms β†’ 600ms)

Strategic Impact

Data preparation enabling GenAI capabilities


πŸŽ“ Key Learnings

Balancing Speed vs. Rigor

When faced with incomplete data and urgent business decisions, I learned that pragmatic interim solutions with clear limitations beat perfect analyses that arrive too late. The key was transparency:

  1. Delivered interim analysis in 2 days using regional-product averaging for missing values
  2. Clearly documented limitations in all reports and presentations
  3. Simultaneously initiated data quality improvements, achieving 90% completeness in 2 months

Stakeholders appreciated the honesty. By flagging what was solid versus what relied on heuristics, I built trust that paid dividends in future projects.

User-Centric Analytics

Working with engineering, UX, and product teams to design the GA4 tracking specification collaboratively ensured that:

Self-Service Enablement

By building interactive dashboards with clear documentation, I reduced ad-hoc analysis requests by 60%. This freed time for deeper strategic work while empowering stakeholders to find their own answers.

Iterative Scaling

The MVP-to-scale approach proved essential:

  1. Validated: MVP tracking with 1 market (Sweden) to ensure data quality and usability
  2. Scaled: Rolled out to 112 markets with localization guides
  3. Refined: Continuously improved based on stakeholder feedback and market-specific learnings

This iterative cycleβ€”monitor metrics weekly, identify opportunities, coordinate with teams, and measure impactβ€”became a repeatable framework for optimization.


πŸ› οΈ Skills Demonstrated


πŸ€™πŸ» Let's Connect

πŸ“§ thanhphong.trang@gmail.com
πŸ’Ό LinkedIn Profile

Available for: Data Analyst, Product Manager
Location: Gothenburg, Sweden


πŸ“‚ Appendix: Artifacts on GitHub

Repository Structure

/search-analytics β”‚ β”œβ”€β”€ /sql β”‚ β”œβ”€β”€ null_handling_subquery.sql β”‚ β”œβ”€β”€ behavioral_metrics.sql β”‚ └── etl_pipeline_sample.sql β”‚ β”œβ”€β”€ /python β”‚ β”œβ”€β”€ engagement_analysis.py β”‚ β”œβ”€β”€ zero_results_analysis.py β”‚ └── requirements.txt β”‚ └── /powerbi └── dax_measures.txt

View complete code repository:
GitHub: thanhphongtrang/search-analytics