Skip to content

Dribbles

The dribbles section in the markings response contains individual dribble events with handedness, timing, and ball height information.

Overview

Each record represents a single dribble—from when the ball leaves the player's hand to when they touch it again. Occassionally, there are plays that are unclear whether they are dribbles or uncontrolled bouncing of the ball (e.g. a deflection of a pass onto the ground and then picking the ball up).

NOTE

For the purpose of this data set, a dribble is defined as a player having two consecutive touches of the ball with the ball hitting the ground in between. If a dribble is stolen or deflected and the offensive player doesn't recover the ball, that attempted dribble will not be included in this data set.

Sample Response

json
{
  "markings": {
    "dribbles": [
      {
        "chance_id_ctg": "chance_51bfc1fda2cc0deb125bee9988859667",
        "did_switch_hands": false,
        "dribble_end_hand": "left",
        "dribble_end_height_in": 22.19,
        "dribble_hand": "left",
        "dribble_id_ctg": "dribble_f00be85fa245d2860c8f25018a840e62",
        "dribble_start_height_in": 23.26,
        "ball_start_loc_x": -243.31,
        "ball_start_loc_y": -52.18,
        "ball_start_region": "middle three",
        "ball_end_loc_x": -247.6,
        "ball_end_loc_y": -58.44,
        "ball_end_region": "middle three",
        "ballhandler_start_loc_x": -238.12,
        "ballhandler_start_loc_y": -49.93,
        "ballhandler_start_region": "middle three",
        "ballhandler_end_loc_x": -247.2,
        "ballhandler_end_loc_y": -57.31,
        "ballhandler_end_region": "middle three",
        "ball_handler_acceleration": 1.22,
        "ball_handler_feet_from_rim_at_dribble": 31.06,
        "ball_handler_location_at_dribble_x": -21.48,
        "ball_handler_location_at_dribble_y": 9.34,
        "ball_handler_rim_movement_angle_after_dribble": 22.17,
        "ball_handler_rim_movement_angle_before_dribble": 11.43,
        "ball_handler_velocity_after_dribble": 10.25,
        "ball_handler_velocity_before_dribble": 9.03,
        "distance_covered_from_prior_dribble_in_touch": 5.12,
        "end_game_clock": 717,
        "end_he_frame": 252,
        "end_shot_clock": 22,
        "end_wall_clock": "2025-12-23T01:10:38.473+00:00",
        "game_id_nba": "0022500404",
        "nba_game_id": "0022500404",
        "nba_player_id": 1642843,
        "period": 1,
        "player_id_nba": 1642843,
        "num_close_teammates": 1,
        "prior_dribbles_in_touch": 0,
        "start_game_clock": 718,
        "start_he_frame": 241,
        "start_shot_clock": 23,
        "start_wall_clock": "2025-12-23T01:10:37.473+00:00"
      }
    ]
  }
}

Fields

Identifiers

dribble_id_ctg

Type: string

CTG-generated unique identifier for this dribble event


game_id_nba

Type: string

NBA game ID


nba_game_id deprecated

Type: string

NBA game ID

Deprecated

Use game_id_nba instead. This field will be removed in a future version.


player_id_nba

Type: integer

NBA player ID of the dribbler


nba_player_id deprecated

Type: integer

NBA player ID of the dribbler

Deprecated

Use player_id_nba instead. This field will be removed in a future version.


chance_id_ctg

Type: string

CTG chance ID. null if the dribble doesn't fall within any chance window (which could occur due to a data error, e.g. the chances data not having a correct start and end frame)


Timing

Period

period

Type: integer

Period in which the dribble occurred

Start (Ball Leaves Hand)

start_game_clock

Type: float

Game clock (seconds remaining) when ball left dribbler's hands


start_shot_clock

Type: float

Shot clock when ball left hands


start_he_frame

Type: integer

Hawk-Eye frame when ball left hands


start_wall_clock

Type: string

UTC timestamp when ball left hands

End (Ball Touched Again)

end_game_clock

Type: float

Game clock when ball is touched again by dribbler


end_shot_clock

Type: float

Shot clock when ball touched again


end_he_frame

Type: integer

Hawk-Eye frame when ball touched again


end_wall_clock

Type: string

UTC timestamp when ball touched again


Handedness

dribble_hand

Type: string

right or left — which hand touched the ball last before the dribble


dribble_end_hand

Type: string

right or left — which hand touched the ball first after it hit ground


did_switch_hands

Type: boolean

true if dribble_end_hand differs from dribble_hand (e.g. a crossover dribble)


Ball Height

dribble_start_height_in

Type: float | Unit: inches

Ball height when leaving the player's hand


dribble_end_height_in

Type: float | Unit: inches

Ball height when player touches it again


Location And Movement

ballhandler_start_loc_x

Type: float | Unit: inches

X coordinate of the ballhandler's centroid when the dribble starts.


ballhandler_start_loc_y

Type: float | Unit: inches

Y coordinate of the ballhandler's centroid when the dribble starts.


ballhandler_start_region

Type: string

Court region of the ballhandler's centroid when the dribble starts.


ballhandler_end_loc_x

Type: float | Unit: inches

X coordinate of the ballhandler's centroid when the dribble ends.


ballhandler_end_loc_y

Type: float | Unit: inches

Y coordinate of the ballhandler's centroid when the dribble ends.


ballhandler_end_region

Type: string

Court region of the ballhandler's centroid when the dribble ends.


ball_start_loc_x

Type: float | Unit: inches

X coordinate of the ball when the dribble starts.


ball_start_loc_y

Type: float | Unit: inches

Y coordinate of the ball when the dribble starts.


ball_start_region

Type: string

Court region of the ball when the dribble starts.


ball_end_loc_x

Type: float | Unit: inches

X coordinate of the ball when the dribble ends.


ball_end_loc_y

Type: float | Unit: inches

Y coordinate of the ball when the dribble ends.


ball_end_region

Type: string

Court region of the ball when the dribble ends.


ball_handler_location_at_dribble_x

Type: float | Unit: feet | Nullable

Ballhandler x coordinate when the dribble started.


ball_handler_location_at_dribble_y

Type: float | Unit: feet | Nullable

Ballhandler y coordinate when the dribble started.


ball_handler_feet_from_rim_at_dribble

Type: float | Unit: feet | Nullable

Ballhandler distance from the rim when the dribble started.


ball_handler_velocity_before_dribble

Type: float | Unit: feet/sec | Nullable

Ballhandler speed before the dribble started.


ball_handler_velocity_after_dribble

Type: float | Unit: feet/sec | Nullable

Ballhandler speed after the dribble started.


ball_handler_acceleration

Type: float | Unit: feet/sec | Nullable

Change from the ballhandler's speed before the dribble to their speed after the dribble.


ball_handler_rim_movement_angle_before_dribble

Type: float | Unit: degrees | Nullable

Ballhandler movement angle relative to the rim before the dribble.


ball_handler_rim_movement_angle_after_dribble

Type: float | Unit: degrees | Nullable

Ballhandler movement angle relative to the rim after the dribble.


num_close_teammates

Type: integer | Nullable

Number of teammates near the ballhandler when the dribble started.


prior_dribbles_in_touch

Type: integer | Nullable

Number of prior dribbles by the ballhandler during the same possession touch.


distance_covered_from_prior_dribble_in_touch

Type: float | Unit: feet | Nullable

Distance the ballhandler covered from their prior dribble in the same possession touch. null for the first dribble in a touch.