# NYC Uber and Lyft trips by taxi zone and hour

**See where and when Uber and Lyft pick up riders across New York City, hour by hour.** This dataset turns NYC Taxi and Limousine Commission trip records into counts of ride-hail trips per taxi zone, company and local hour, with the fares, distances, trip times, tips and driver pay behind them. Use it to study demand by neighbourhood and time of day, compare Uber with Lyft, or forecast pickups. A…

NYC Uber and Lyft trips by taxi zone and hour is an open, machine-readable dataset published on Mostly Right as immutable Parquet versions, with a documented column schema, a JSON query API and a direct download. It is free to read and open to AI agents.

## Facts

- Slug: `nyc-uber-and-lyft-trips-by-taxi-zone-and-hour`
- Canonical page: https://mostlyright.md/datasets/nyc-uber-and-lyft-trips-by-taxi-zone-and-hour
- Publisher: mostlyrightmd (https://mostlyright.md/publishers/mostlyrightmd)
- Published: 2026-10-11T00:01:36.954Z
- Tables: 2
- Formats: Apache Parquet (download), JSON (query and sample)
- Cost: free to read; querying and downloading need a free account
- Metadata API: `GET https://mostlyright.md/api/v2/public/datasets/nyc-uber-and-lyft-trips-by-taxi-zone-and-hour`
- Topics: uber, lyft, new york city, ride hailing, taxi zones, nyc tlc, for-hire vehicles

## How to use it

1. Read a table's schema — no account needed.
2. Fetch its published sample rows — no account needed.
3. Sign in at https://mostlyright.md/login, connect this dataset to a workspace on its page, and create an `mr_use_` key.
4. Query bounded JSON, or download the complete Parquet snapshot and read it locally.

Agents can do all of this over MCP at `https://mostlyright.md/api/mcp` — searching, reading schemas and sampling rows work with no credential at all.

## Table: zone_month_totals

- Table id: `4f946f00-5a8b-4fc6-99da-2f6d2e9421fc`
- Slug: `zone-month-totals`
- Immutable version: `86fa1574-6f71-5006-9183-e6a94423fab6`
- Schema: `GET https://mostlyright.md/api/v2/public/tables/4f946f00-5a8b-4fc6-99da-2f6d2e9421fc/schema`
- Sample rows, no key: `GET https://mostlyright.md/api/v2/public/tables/4f946f00-5a8b-4fc6-99da-2f6d2e9421fc/preview`
- Bounded JSON query: `POST https://mostlyright.md/api/v2/public/tables/4f946f00-5a8b-4fc6-99da-2f6d2e9421fc/query` with `x-api-key: mr_use_…`
- Full Parquet snapshot: `GET https://mostlyright.md/api/v2/public/tables/4f946f00-5a8b-4fc6-99da-2f6d2e9421fc/current` with `x-api-key: mr_use_…` (application/vnd.apache.parquet)

### Columns (7)

| Column | Type | Description |
| --- | --- | --- |
| `month` | date | The first day of the calendar month the trips fall in. |
| `industry` | string | The TLC industry: FHV - High Volume (Uber, Lyft and formerly Juno and Via), Yellow Taxi or Green Cab. |
| `direction` | string | Whether the count is of trips starting (pickup) or ending (dropoff) in the zone. |
| `zone_id` | integer | The TLC taxi zone ID, 1 to 265. |
| `borough` | string | The borough of the taxi zone. |
| `zone_name` | string | The name of the taxi zone. |
| `trips` | integer | The number of trips that month starting or ending in the zone. |

## Table: zone_hours

- Table id: `2f3bae76-e909-4977-8b71-d479323104f9`
- Slug: `zone-hours`
- Immutable version: `12981598-e88d-5e6a-9757-ec5c99c06180`
- Schema: `GET https://mostlyright.md/api/v2/public/tables/2f3bae76-e909-4977-8b71-d479323104f9/schema`
- Sample rows, no key: `GET https://mostlyright.md/api/v2/public/tables/2f3bae76-e909-4977-8b71-d479323104f9/preview`
- Bounded JSON query: `POST https://mostlyright.md/api/v2/public/tables/2f3bae76-e909-4977-8b71-d479323104f9/query` with `x-api-key: mr_use_…`
- Full Parquet snapshot: `GET https://mostlyright.md/api/v2/public/tables/2f3bae76-e909-4977-8b71-d479323104f9/current` with `x-api-key: mr_use_…` (application/vnd.apache.parquet)

### Columns (17)

| Column | Type | Description |
| --- | --- | --- |
| `company` | string | The high-volume for-hire company that dispatched the trips: Uber, Lyft, Juno or Via. |
| `license_number` | string | The TLC high-volume license number of the company, such as HV0003 for Uber and HV0005 for Lyft. |
| `pickup_date` | date | The calendar day of pickup, in New York local time. |
| `pickup_hour` | integer | The hour of pickup, 0 to 23, in New York local time. |
| `pickup_zone_id` | integer | The TLC taxi zone ID where the trips began, 1 to 265. |
| `borough` | string | The borough of the pickup zone, from the TLC taxi zone lookup. |
| `zone_name` | string | The name of the pickup zone, from the TLC taxi zone lookup. |
| `trips` | integer | The number of trips that began in this zone, hour and company. |
| `shared_trips` | integer | Trips where the rider asked to share and was matched with another rider. |
| `trip_miles_total` | decimal | The total passenger trip distance, in miles. |
| `trip_minutes_total` | decimal | The total passenger trip time, in minutes. |
| `base_fare_total_usd` | decimal | The total base passenger fare, in US dollars, before taxes, tolls and fees. |
| `tips_total_usd` | decimal | The total tips paid to drivers, in US dollars. |
| `driver_pay_total_usd` | decimal | The total driver pay, in US dollars, excluding tips. |
| `base_fare_avg_usd` | decimal | The average base passenger fare per trip, in US dollars, before taxes, tolls and fees. |
| `trip_miles_avg` | decimal | The average trip distance, in miles. |
| `trip_minutes_avg` | decimal | The average trip time, in minutes. |

## Citing this dataset

Cite the dataset by name and canonical URL (https://mostlyright.md/datasets/nyc-uber-and-lyft-trips-by-taxi-zone-and-hour), the table, and the immutable `version_id` the rows came from. A query response carries `table.version_id` and `table.content_digest`; a download carries a strong ETag and a `Content-Digest` header.
