Work · Border freight
Truck wait times at the border
How long commercial trucks are waiting to enter the United States at every land port on the Mexican and Canadian borders, as U.S. Customs and Border Protection posts it, and how long they usually wait at each hour of the week. CBP only shows the wait right now; the history here is collected every half hour.
En español: los cruces con México → · Cars and pedestrians →
- As of
- Oct 29, 2026, 9:47 PM Michigan time
- Crossings reporting
- 38 of 53
- Longest wait
- 50 min Laredo World Trade Bridge
The pages update every morning and when USDA posts new prices. This updates them now, for everyone (once an hour).
Copied Oct 29, 2026, 9:47 PM Michigan time. With JavaScript on, the waits below refresh from CBP when the page opens. “Posted” is the port’s local time.
Go straight to: Blaine Pacific Highway Brownsville Veterans International Bridge Buffalo Peace Bridge Calexico East Champlain–Lacolle Detroit Ambassador Bridge El Paso Ysleta–Zaragoza Bridge Gordie Howe International Bridge Laredo Colombia Solidarity Bridge Laredo World Trade Bridge Lewiston–Queenston Bridge Nogales Mariposa Port of Entry Otay Mesa Commercial Crossing Pharr–Reynosa International Bridge Port Huron Blue Water Bridge Santa Teresa Port of Entry
Mexican border: commercial lanes right now
Trucks entering the U.S. from Mexico. “Closed” and “Pending” mean CBP posted no wait for those lanes; the 30-day average leaves those hours out rather than counting them as zero.
| Crossing | Standard | FAST | Lanes open | 30-day average | Posted |
|---|---|---|---|---|---|
| Andrade | Closed | — | — / 1 | — | — |
| Brownsville Veterans International Bridge | No wait | Closed | 2 / 4 | 7 min | Oct 29, 8:00 PM CDT |
| Brownsville – Los Indios | No wait | Closed | 1 / 4 | 2 min | Oct 29, 8:00 PM CDT |
| Calexico East | 20 min | 10 min | 2 + 1 FAST / 3 | 17 min | Oct 29, 6:00 PM PDT |
| Columbus | Closed | — | — / 1 | 6 min | — |
| Del Rio | No wait | — | 1 / 2 | 0 min | Oct 29, 8:00 PM CDT |
| Douglas (Raul Hector Castro) | Closed | — | — / 2 | 1 min | — |
| Eagle Pass – Bridge II | 15 min | Closed | 1 / 1 | 12 min | Oct 29, 9:00 PM CDT |
| El Paso Ysleta–Zaragoza Bridge | 30 min | 10 min | 4 + 2 FAST / 8 | 28 min | Oct 29, 7:00 PM MDT |
| El Paso – BOTA Cargo Facility | Pending | Pending | — / 6 | — | — |
| El Paso – Bridge of the Americas (BOTA) | Closed | Closed | — / 3 | 8 min | — |
| El Paso – Cargo | Pending | Pending | — / 6 | — | — |
| Laredo Colombia Solidarity Bridge | 4 min | No wait | 4 + 2 FAST / 8 | 10 min | Oct 29, 8:00 PM CDT |
| Laredo World Trade Bridge | 50 min | 25 min | 12 + 4 FAST / 19 | 32 min | Oct 29, 8:00 PM CDT |
| Lukeville | No wait | — | 1 / 1 | 0 min | Oct 29, 7:00 PM MST |
| Marcelino Serna – Tornillo | Closed | Closed | — / 2 | 5 min | — |
| Naco | Closed | — | — / 1 | 1 min | — |
| Nogales Mariposa Port of Entry | Closed | Closed | — / 8 | 5 min | — |
| Otay Mesa Commercial Crossing | 10 min | Closed | 8 / 10 | 26 min | Oct 29, 4:00 PM PDT |
| Pharr–Reynosa International Bridge | 2 min | 1 min | 4 + 1 FAST / 7 | 21 min | Oct 29, 8:00 PM CDT |
| Presidio | Closed | — | — / 2 | 2 min | — |
| Progreso International Bridge | Closed | — | — / 1 | — | — |
| Rio Grande City | No wait | — | 1 / 2 | 1 min | Oct 29, 7:00 PM CDT |
| Roma | 10 min | — | 1 / 1 | 3 min | Oct 29, 8:00 PM CDT |
| Roma – Texas (second listing) | Pending | Pending | — / 1 | — | — |
| San Luis | No wait | — | 2 / 2 | 4 min | 5:00 pm MST |
| Santa Teresa Port of Entry | 40 min | 35 min | 1 + 1 FAST / 3 | 34 min | Oct 29, 7:00 PM MDT |
| Tecate | Closed | — | — / 2 | 16 min | — |
Canadian border: commercial lanes right now
Trucks entering the U.S. from Canada. “Closed” and “Pending” mean CBP posted no wait for those lanes; the 30-day average leaves those hours out rather than counting them as zero.
| Crossing | Standard | FAST | Lanes open | 30-day average | Posted |
|---|---|---|---|---|---|
| Alexandria Bay – Thousand Islands Bridge | No wait | — | 1 / 5 | 2 min | Oct 29, 9:00 PM EDT |
| Blaine Pacific Highway | No wait | Closed | 2 / 3 | 6 min | Oct 29, 5:00 PM PDT |
| Blaine – Point Roberts | Pending | Pending | — / 1 | — | — |
| Buffalo Peace Bridge | 12 min | — | 4 / 8 | 7 min | Oct 29, 9:37 PM EDT |
| Calais – International Avenue | No wait | — | 1 / 3 | 0 min | Oct 29, 8:00 PM EDT |
| Champlain–Lacolle | 20 min | Closed | 1 / 8 | 1 min | Oct 29, 9:00 PM EDT |
| Derby Line | No wait | — | 1 / 2 | 0 min | Oct 29, 8:00 AM EDT old reading |
| Detroit Ambassador Bridge | No wait | Closed | 4 / 13 | 8 min | Oct 29, 9:00 PM EDT |
| Detroit – Windsor Tunnel | Closed | — | — / 1 | 4 min | — |
| Gordie Howe International Bridge | No wait | Closed | 4 / 15 | 3 min | Oct 29, 9:00 PM EDT |
| Highgate Springs | 1 min | — | 1 / 1 | 0 min | Oct 29, 9:00 PM EDT |
| Houlton | No wait | — | 1 / 2 | 2 min | Oct 29, 9:00 PM EDT |
| International Falls | No wait | — | 1 / 1 | 0 min | Oct 28, 10:00 PM CDT old reading |
| Jackman | No wait | — | 1 / 2 | 0 min | Oct 29, 9:00 PM EDT |
| Lewiston–Queenston Bridge | 4 min | — | 2 / 4 | 3 min | Oct 29, 9:37 PM EDT |
| Lynden | 5 min | — | 1 / 1 | 3 min | Oct 29, 6:00 PM PDT |
| Madawaska | No wait | — | 1 / 3 | 2 min | Oct 29, 9:00 PM EDT |
| Massena | No wait | — | 1 / 3 | 0 min | Oct 28, 11:00 PM EDT old reading |
| Norton | No wait | — | 1 / 1 | 0 min | Oct 28, 11:00 PM EDT old reading |
| Ogdensburg | No wait | — | 1 / 2 | 0 min | Oct 28, 11:00 PM EDT old reading |
| Pembina | 4 min | — | 1 / 4 | 8 min | Oct 29, 7:00 AM CDT old reading |
| Port Huron Blue Water Bridge | No wait | No wait | 3 + 1 FAST / 9 | 12 min | Oct 29, 10:00 PM EST |
| Sault Ste. Marie – International Bridge - SSM | No wait | — | 1 / 2 | 0 min | Oct 29, 10:00 PM EDT |
| Sumas | No wait | — | 1 / 2 | 1 min | Oct 29, 5:00 AM PDT old reading |
| Sweetgrass | No wait | — | 1 / 2 | 12 min | Oct 29, 7:00 PM MDT |
Where trucks usually wait longest
The crossings with the longest average wait in the standard commercial lanes over the last 30 days, and the hour of the week that’s usually worst at each.
| Crossing | Average | Usually worst | Usually best |
|---|---|---|---|
| Santa Teresa Port of Entry | 34 min | Fri 4 PM, 45 min | Thu 9 PM, 21 min |
| Laredo World Trade Bridge | 32 min | Mon 7 PM, 60 min | Mon 7 AM, 0 min |
| El Paso Ysleta–Zaragoza Bridge | 28 min | Fri 11 AM, 46 min | Fri 11 PM, 9 min |
| Otay Mesa Commercial Crossing | 26 min | Wed 4 PM, 45 min | Wed 8 PM, 2 min |
| Pharr–Reynosa International Bridge | 21 min | Fri 2 PM, 50 min | Sun 3 PM, 0 min |
| Calexico East | 17 min | Mon 7 PM, 82 min | Mon 7 AM, 5 min |
| Tecate | 16 min | Mon 8 AM, 30 min | Thu 3 PM, 4 min |
| Eagle Pass – Bridge II | 12 min | Wed 3 PM, 48 min | Fri 8 AM, 1 min |
Crossing pages
The busiest commercial crossings each have a page: the wait right now, a heat map of the usual wait by day and hour, and the last week of readings.
- Blaine Pacific Highway
- Brownsville Veterans International Bridge
- Buffalo Peace Bridge
- Calexico East
- Champlain–Lacolle
- Detroit Ambassador Bridge
- El Paso Ysleta–Zaragoza Bridge
- Gordie Howe International Bridge
- Laredo Colombia Solidarity Bridge
- Laredo World Trade Bridge
- Lewiston–Queenston Bridge
- Nogales Mariposa Port of Entry
- Otay Mesa Commercial Crossing
- Pharr–Reynosa International Bridge
- Port Huron Blue Water Bridge
- Santa Teresa Port of Entry
En español
- Todos los cruces con México
- Garita Mariposa
- Garita Mexicali II
- Garita de Otay
- Puente Comercio Mundial
- Puente Los Tomates
- Puente Reynosa–Pharr
- Puente Solidaridad Colombia
- Puente Zaragoza–Ysleta
- San Jerónimo – Santa Teresa
Download the data
Every reading the board has, kept for good (21,970 so far): one file per year, each reading with the time the port posted it, the standard and FAST waits and lanes open, and whether this site’s Worker caught it (worker) or it came from the archive that filled in the weeks before (archive). Beside it, every month of averages CBP has published, to check the board’s own figures against.
Every reading, 2026 (CSV) The 30-day averages (CSV) CBP’s published averages (CSV)
These files are also listed with every other dataset on this site, on Open data.
How it works
Copied Oct 29, 2026, 9:47 PM Michigan timeAt every land port, CBP officers post how long the commercial lanes are backed up, about once an hour, to the agency’s Border Wait Times site. It’s the best public number there is, but it’s only ever the number right now. Nobody shows what a crossing is usually like on a Tuesday at 2 PM, which is what you need to plan a load.
- A Cloudflare Worker reads CBP every half hour. The same small Worker behind this site’s reefer rate board asks CBP’s public feed (no key needed) for every port, and keeps the ones with commercial lanes.
- Each reading is kept once, for good. A reading is stored with the time the port posted it, so asking twice in the same hour never counts it twice; times are the port’s own clock. The Worker holds the last two weeks in a small database on Cloudflare (D1), and every time the site is rebuilt they’re added to its permanent archive, CSV files in this site’s repository (below). Nothing is kept anywhere else.
- The record reaches back before the Worker. CBP keeps no past readings, only the one posted last. The Worker began recording on October 14, 2026; the readings from September 13 to then come from an independent public archive that saved CBP’s whole feed about once an hour (gptcbp/border-crossing-data), read with the same code the Worker uses. Where both have a reading they agree almost every time; the archive missed some hours, so those weeks rest on fewer readings.
- Unknown is not zero. When lanes are closed or the update is pending, CBP posts no wait. Those are stored as blanks, not as zero minutes, and averages skip them. Counting them as zero would make a crossing that’s often closed look fast.
- The averages are the last 30 days. For each crossing, each day of the week and each hour, the page shows the average posted wait. With only a few weeks on record an hour may rest on two or three readings, so the pages say how many readings they’re based on; the record started Sep 13, 2026.
- CBP’s own history fills the gap. CBP also publishes, for every port, the average wait at each hour of each weekday of a month, from the year before. Each crossing page shows that for the current month, labeled as CBP’s, so the heat map is useful from the first day, and the board’s own averages take over once a crossing has a few days of readings.
- The pages are rebuilt at least once a day. A GitHub Action copies the Worker’s data into the site, so every number is in the HTML. The “right now” columns also refresh from the Worker when the page opens, cached for five minutes.
How to read it: Standard is the regular commercial lanes; FAST is the lane for carriers and drivers enrolled in CBP’s Free and Secure Trade program. Lanes open is standard plus FAST, out of the most the port has. The wait is CBP’s, rounded the way CBP rounds it; “no wait” is CBP’s “no delay”.
Source: U.S. Customs and Border Protection, Border Wait Times; readings from September 13 to October 14, 2026 as saved by gptcbp/border-crossing-data. The numbers are public; any mistakes in presenting them are mine. The Worker’s code is in the worker folder of this site’s repository, and how much of Cloudflare’s free plan it uses is on the Worker usage page.