renavon/

hkjc_race_results

PREMIUM

Hong Kong horse racing results and historical form guide

Complete historical record of every Hong Kong horse race from the Jockey Club. Track individual horse performances across thousands of races with detailed finishing positions, winning margins, race times, and running styles. Perfect for form analysis, identifying patterns, and researching historical performance trends. Includes 60+ data points per race entry covering horse details, jockey and trainer information, race conditions, and performance metrics. Download ready-to-use Excel or CSV files for your own analysis.

This is a premium dataset

Create a free account to subscribe and get full access — SQL queries, CSV/Excel downloads, and API.

Dataset Statistics

Rows
Columns
84
Data Coverage
Last Updated

You're viewing a 20-row preview. Subscribe to unlock the full interactive data explorer, downloads, and SQL access.

View Pricing

Sample Data

{'name': 'horse_id', 'type': 'String'} {'name': 'race_date', 'type': 'DateTime'} {'name': 'race_number', 'type': 'Int64'} {'name': 'race_index', 'type': 'Nullable(String)'} {'name': 'race_id', 'type': 'Nullable(String)'} {'name': 'horse_name', 'type': 'Nullable(String)'} {'name': 'horse_number', 'type': 'Nullable(Int64)'} {'name': 'finishing_position', 'type': 'Int64'} {'name': 'finishing_time_seconds', 'type': 'Nullable(Float64)'} {'name': 'finishing_time', 'type': 'Nullable(String)'} {'name': 'margin', 'type': 'Nullable(String)'} {'name': 'margin_lengths', 'type': 'Nullable(Float64)'} {'name': 'draw', 'type': 'Nullable(Int64)'} {'name': 'odds', 'type': 'Nullable(Float64)'} {'name': 'position_1', 'type': 'Nullable(String)'} {'name': 'position_2', 'type': 'Nullable(String)'} {'name': 'position_3', 'type': 'Nullable(String)'} {'name': 'position_4', 'type': 'Nullable(String)'} {'name': 'position_5', 'type': 'Nullable(String)'} {'name': 'position_6', 'type': 'Nullable(String)'} {'name': 'section_1_time', 'type': 'Nullable(String)'} {'name': 'section_2_time', 'type': 'Nullable(String)'} {'name': 'section_3_time', 'type': 'Nullable(String)'} {'name': 'section_4_time', 'type': 'Nullable(String)'} {'name': 'section_5_time', 'type': 'Nullable(String)'} {'name': 'section_6_time', 'type': 'Nullable(String)'} {'name': 'lbw_1', 'type': 'Nullable(String)'} {'name': 'lbw_2', 'type': 'Nullable(String)'} {'name': 'lbw_3', 'type': 'Nullable(String)'} {'name': 'lbw_4', 'type': 'Nullable(String)'} {'name': 'lbw_5', 'type': 'Nullable(String)'} {'name': 'lbw_6', 'type': 'Nullable(String)'} {'name': 'split_800m_600m_time', 'type': 'Nullable(Float64)'} {'name': 'split_600m_400m_time', 'type': 'Nullable(Float64)'} {'name': 'split_400m_200m_time', 'type': 'Nullable(Float64)'} {'name': 'split_final_200m_time', 'type': 'Nullable(Float64)'} {'name': 'section_1_vs_pace', 'type': 'Nullable(Float64)'} {'name': 'section_2_vs_pace', 'type': 'Nullable(Float64)'} {'name': 'section_3_vs_pace', 'type': 'Nullable(Float64)'} {'name': 'section_4_vs_pace', 'type': 'Nullable(Float64)'} {'name': 'section_5_vs_pace', 'type': 'Nullable(Float64)'} {'name': 'section_6_vs_pace', 'type': 'Nullable(Float64)'} {'name': 'venue_code', 'type': 'String'} {'name': 'venue', 'type': 'Nullable(String)'} {'name': 'surface_type', 'type': 'Nullable(String)'} {'name': 'course_config', 'type': 'Nullable(String)'} {'name': 'distance', 'type': 'Nullable(Int64)'} {'name': 'distance_category', 'type': 'String'} {'name': 'race_name', 'type': 'Nullable(String)'} {'name': 'race_class', 'type': 'Nullable(String)'} {'name': 'track_condition', 'type': 'Nullable(String)'} {'name': 'field_size', 'type': 'Int64'} {'name': 'jockey', 'type': 'Nullable(String)'} {'name': 'jockey_allowance', 'type': 'Nullable(Int64)'} {'name': 'trainer', 'type': 'Nullable(String)'} {'name': 'owner', 'type': 'Nullable(String)'} {'name': 'horse_colour', 'type': 'Nullable(String)'} {'name': 'horse_sex', 'type': 'Nullable(String)'} {'name': 'horse_age', 'type': 'Nullable(Int32)'} {'name': 'horse_origin', 'type': 'Nullable(String)'} {'name': 'import_type', 'type': 'Nullable(String)'} {'name': 'import_date', 'type': 'Nullable(DateTime)'} {'name': 'declared_horse_weight', 'type': 'Nullable(Int32)'} {'name': 'sire', 'type': 'Nullable(String)'} {'name': 'dam', 'type': 'Nullable(String)'} {'name': 'dam_sire', 'type': 'Nullable(String)'} {'name': 'is_winner', 'type': 'Nullable(UInt8)'} {'name': 'is_top_three', 'type': 'Nullable(UInt8)'} {'name': 'dead_heat', 'type': 'Nullable(Bool)'} {'name': 'weight', 'type': 'Nullable(Int32)'} {'name': 'gear', 'type': 'Nullable(String)'} {'name': 'entry_rating', 'type': 'Nullable(Int64)'} {'name': 'rating_type', 'type': 'String'} {'name': 'total_stakes', 'type': 'Nullable(Float64)'} {'name': 'season_stakes', 'type': 'Nullable(Float64)'} {'name': 'no_of_starts', 'type': 'Nullable(String)'} {'name': 'career_wins', 'type': 'Nullable(Int32)'} {'name': 'career_seconds', 'type': 'Nullable(Int32)'} {'name': 'career_thirds', 'type': 'Nullable(Int32)'} {'name': 'career_total_starts', 'type': 'Nullable(Int32)'} {'name': 'career_win_rate', 'type': 'Nullable(Float64)'} {'name': 'race_url', 'type': 'Nullable(String)'} {'name': 'video_replay_url', 'type': 'String'} {'name': 'updated_at', 'type': 'Nullable(DateTime)'}
Showing first 20 rows of sample data
Data Dictionary

Not ready to subscribe? Get notified when this dataset is updated.

Questions about this data?

Our data experts are ready to help clarify any aspects of this dataset.

Contact Our Team

This is a premium dataset

Create an account to subscribe and get full access.