Olympic Games Data Visualization

A comprehensive dashboard tracking Olympic medal performance from Athens 1896 to Paris 2024

BigQuery SQL Looker Studio Data Visualization
Olympic Games Dashboard Overview
BigQuery SQL Implementation

Project information

  • Category: Dashboard Design
  • Tech Stack: BigQuery, SQL, Looker Studio
  • Project URL: Dashboard link
  • Completion Date: August 2024
  • LOD: Beginner
  • Data Source: Kaggle Olympic Dataset

Project Overview

This comprehensive Olympic Games dashboard visualizes medal tallies and performance metrics from the 1896 Athens Games to the 2024 Paris Olympics. Using Google BigQuery for data processing and Looker Studio for visualization, this project offers interactive insights into Olympic history spanning over 128 years.

The dashboard allows users to explore medal counts by country, sport, and Olympic Games, with interactive filters to customize the view. It provides both historical trends and detailed breakdowns of Olympic performance.

128+
Years of Olympic Data
200+
Countries Analyzed
50K+
Athlete Records
30+
Olympic Games

Key Features

  • Historical medal tracking across 128+ years of Olympic history
  • Country performance comparisons with interactive filters
  • Sport-specific analysis showing medal distribution
  • Athlete performance metrics and record tracking
  • Interactive time-series visualization of medal counts
  • Geographical distribution of Olympic success
  • Comparison tools for analyzing country performance

Technical Implementation

Data was extracted from public Olympic datasets, transformed using SQL in BigQuery to create optimized data models, and visualized through custom Looker Studio dashboards with interactive elements.

The project involved:

  • Data cleaning and normalization in BigQuery
  • Complex SQL queries for aggregating medal counts
  • Custom calculated fields for performance metrics
  • Interactive dashboard design with filters and parameters
  • Responsive layout for mobile and desktop viewing

Sample SQL Query


SELECT 
  player_id,
  Name,
  Sex,
  Team,
  NOC,
  Year,
  Season,
  City,
  Sport,
  Event,
  Medal,
  CONCAT(Sport, '', Event) AS sport_event,
  REGEXP_REPLACE(Team, r'-\d+$', '') AS cleaned_country_name,
  CASE
    WHEN Sex = 'M' THEN TRUE
    ELSE FALSE
  END AS male_only,
  CASE
    WHEN Sex = 'F' THEN TRUE
    ELSE FALSE
  END AS female_only
FROM 
  `portfolio.olympics.medals`;