Route 49 Forest Heights — Calgary Transit Bus Schedule, Frequency & Stops
Route 49 Forest Heights is a Calgary Transit bus route running toward FOREST HEIGHTS. Service operates on Monday–Friday, Monday–Thursday, Sunday & holidays, Saturday (Jun 27 – Aug 29), Stampede (Jul 6–10), Friday, Stampede (Jul 4–11), Saturday (Jun 6), Sunday (Jun 7), Saturday (Jun 13), Sunday (Jun 14), Saturday (Jun 20), Sunday (Jun 21), Stampede (Jul 2), Stampede (Jul 3), Stampede (Jul 5), Stampede (Jul 8), Stampede (Jul 12) and Stampede (Jul 13) days. On Monday–Friday & Stampede (Jul 6–10) & Stampede (Jul 2) & Stampede (Jul 3) & Stampede (Jul 8) & Stampede (Jul 13) days, service toward FOREST HEIGHTS runs from 4:41 AM to 12:54 AM, about every 14 minutes at peak and every 22 minutes midday. All times are scheduled times, effective Jun 3 – Aug 30, 2026.
Service alerts
Service alert
Active Jan 1, 2026, 10:00 AM MT until Jun 11, 2026, 11:59 PM MT.
Some trips may have been removed from this route's daily trips. Please use the trip planner on calgarytransit.com to double-check your schedule before you head out to catch your bus.
Stop moved
Active Jun 8, 2026, 4:00 AM MT until Jun 26, 2026, 11:59 PM MT.
Starting Monday, June 8 at the start of service through the end of service on Friday, June 26, there will be concrete work at stop #6184 - routes 43, 49, 87 and 135 will have a stop closure.
The following stop will be temporarily closed:
- SB 36 ST E. @ Radcliffe DR (#6184) - Routes 43, 49, 87 and 135
Please use the following stop in lieu of the closed stop:
- SB 36 ST S.E. @ Radcliffe DR - temporary stop, 20m south of the closed stop*
*Please note: temporary stop is not universally accessible.
Alerts as of Jun 10, 2026, 6:11 AM MT
Frequency & span — toward FOREST HEIGHTS
Route 49 frequency and service span toward FOREST HEIGHTS, effective Jun 3 – Aug 30, 2026
| Days | First | Last | Peak | Midday | Evening |
| Monday–Friday & Stampede (Jul 6–10) & Stampede (Jul 2) & Stampede (Jul 3) & Stampede (Jul 8) & Stampede (Jul 13) | 4:41 AM | 12:54 AM | every 14 min | every 22 min | every 22 min |
| Monday–Thursday | 4:41 AM | 12:54 AM | every 14 min | every 22 min | every 22 min |
| Sunday & holidays & Sunday (Jun 7) & Sunday (Jun 14) & Sunday (Jun 21) & Stampede (Jul 5) & Stampede (Jul 12) | 5:50 AM | 12:39 AM | every 35 min | every 37 min | every 36 min |
| Saturday (Jun 27 – Aug 29) & Stampede (Jul 4–11) & Saturday (Jun 6) & Saturday (Jun 13) & Saturday (Jun 20) | 5:20 AM | 12:41 AM | every 39 min | every 43 min | every 43 min |
| Friday | 4:41 AM | 12:54 AM | every 14 min | every 22 min | every 22 min |
Departures from Marlborough LRT Station (SB 36 ST NE @ 8 AV NE) — toward FOREST HEIGHTS
Route 49 toward FOREST HEIGHTS — departures from Marlborough LRT Station (SB 36 ST NE @ 8 AV NE), Monday–Friday & Stampede (Jul 6–10) & Stampede (Jul 2) & Stampede (Jul 3) & Stampede (Jul 8) & Stampede (Jul 13), effective Jun 3 – Aug 30, 2026
| Hour | Departures |
| 4 AM | 4:41 |
| 5 AM | 5:03, 5:25, 5:38, 5:52 |
| 6 AM | 6:07, 6:22, 6:36, 6:50 |
| 7 AM | 7:05, 7:20, 7:34, 7:48 |
| 8 AM | 8:03, 8:17, 8:30, 8:47 |
| 9 AM | 9:00, 9:14, 9:36, 9:58 |
| 10 AM | 10:20, 10:42 |
| 11 AM | 11:04, 11:26, 11:48 |
| 12 PM | 12:10, 12:32, 12:54 |
| 1 PM | 1:16, 1:38 |
| 2 PM | 2:00, 2:22, 2:34, 2:46, 2:58 |
| 3 PM | 3:10, 3:22, 3:34, 3:45, 3:57 |
| 4 PM | 4:09, 4:23, 4:38, 4:54 |
| 5 PM | 5:10, 5:26, 5:42, 5:58 |
| 6 PM | 6:14, 6:30, 6:46 |
| 7 PM | 7:02, 7:24, 7:46 |
| 8 PM | 8:08, 8:30, 8:52 |
| 9 PM | 9:14, 9:36, 9:58 |
| 10 PM | 10:42 |
| 11 PM | 11:26 |
| After midnight | 12:10 AM, 12:54 AM (after midnight — late-night service from the previous service day) |
Route 49 toward FOREST HEIGHTS — departures from Marlborough LRT Station (SB 36 ST NE @ 8 AV NE), Monday–Thursday, effective Jun 3 – Aug 30, 2026
| Hour | Departures |
| 4 AM | 4:41 |
| 5 AM | 5:03, 5:25, 5:38, 5:52 |
| 6 AM | 6:07, 6:22, 6:36, 6:50 |
| 7 AM | 7:05, 7:20, 7:34, 7:48 |
| 8 AM | 8:03, 8:17, 8:30, 8:36, 8:47 |
| 9 AM | 9:00, 9:14, 9:36, 9:58 |
| 10 AM | 10:20, 10:42 |
| 11 AM | 11:04, 11:26, 11:48 |
| 12 PM | 12:10, 12:32, 12:54 |
| 1 PM | 1:16, 1:38 |
| 2 PM | 2:00, 2:22, 2:34, 2:46, 2:58 |
| 3 PM | 3:10, 3:22, 3:32, 3:37, 3:45, 3:57 |
| 4 PM | 4:09, 4:23, 4:38, 4:54 |
| 5 PM | 5:10, 5:26, 5:42, 5:58 |
| 6 PM | 6:14, 6:30, 6:46 |
| 7 PM | 7:02, 7:24, 7:46 |
| 8 PM | 8:08, 8:30, 8:52 |
| 9 PM | 9:14, 9:36, 9:58 |
| 10 PM | 10:42 |
| 11 PM | 11:26 |
| After midnight | 12:10 AM, 12:54 AM (after midnight — late-night service from the previous service day) |
Route 49 toward FOREST HEIGHTS — departures from Marlborough LRT Station (SB 36 ST NE @ 8 AV NE), Sunday & holidays & Sunday (Jun 7) & Sunday (Jun 14) & Sunday (Jun 21) & Stampede (Jul 5) & Stampede (Jul 12), effective Jun 3 – Aug 30, 2026
| Hour | Departures |
| 5 AM | 5:50 |
| 6 AM | 6:25 |
| 7 AM | 7:00, 7:35 |
| 8 AM | 8:10, 8:45 |
| 9 AM | 9:20, 9:56 |
| 10 AM | 10:33 |
| 11 AM | 11:10, 11:47 |
| 12 PM | 12:24 |
| 1 PM | 1:01, 1:38 |
| 2 PM | 2:15, 2:52 |
| 3 PM | 3:30 |
| 4 PM | 4:09, 4:48 |
| 5 PM | 5:27 |
| 6 PM | 6:03, 6:39 |
| 7 PM | 7:15, 7:51 |
| 8 PM | 8:27 |
| 9 PM | 9:03, 9:39 |
| 10 PM | 10:15, 10:51 |
| 11 PM | 11:27 |
| After midnight | 12:03 AM, 12:39 AM (early Monday — late-night Sunday service) |
Route 49 toward FOREST HEIGHTS — departures from Marlborough LRT Station (SB 36 ST NE @ 8 AV NE), Saturday (Jun 27 – Aug 29) & Stampede (Jul 4–11) & Saturday (Jun 6) & Saturday (Jun 13) & Saturday (Jun 20), effective Jun 3 – Aug 30, 2026
| Hour | Departures |
| 5 AM | 5:20, 5:59 |
| 6 AM | 6:38 |
| 7 AM | 7:17, 7:56 |
| 8 AM | 8:35 |
| 9 AM | 9:14, 9:55 |
| 10 AM | 10:38 |
| 11 AM | 11:21 |
| 12 PM | 12:04, 12:47 |
| 1 PM | 1:30 |
| 2 PM | 2:13, 2:56 |
| 3 PM | 3:39 |
| 4 PM | 4:22 |
| 5 PM | 5:05, 5:48 |
| 6 PM | 6:31 |
| 7 PM | 7:14, 7:57 |
| 8 PM | 8:40 |
| 9 PM | 9:21 |
| 10 PM | 10:01, 10:41 |
| 11 PM | 11:21 |
| After midnight | 12:01 AM, 12:41 AM (after midnight — late-night service from the previous service day) |
Route 49 toward FOREST HEIGHTS — departures from Marlborough LRT Station (SB 36 ST NE @ 8 AV NE), Friday, effective Jun 3 – Aug 30, 2026
| Hour | Departures |
| 4 AM | 4:41 |
| 5 AM | 5:03, 5:25, 5:38, 5:52 |
| 6 AM | 6:07, 6:22, 6:36, 6:50 |
| 7 AM | 7:05, 7:20, 7:34, 7:48 |
| 8 AM | 8:03, 8:17, 8:30, 8:36, 8:47 |
| 9 AM | 9:00, 9:14, 9:36, 9:58 |
| 10 AM | 10:20, 10:42 |
| 11 AM | 11:04, 11:26, 11:48 |
| 12 PM | 12:10, 12:32, 12:54 |
| 1 PM | 1:16, 1:38 |
| 2 PM | 2:00, 2:13, 2:22, 2:34, 2:46, 2:58 |
| 3 PM | 3:10, 3:22, 3:32, 3:37, 3:45, 3:57 |
| 4 PM | 4:09, 4:23, 4:38, 4:54 |
| 5 PM | 5:10, 5:26, 5:42, 5:58 |
| 6 PM | 6:14, 6:30, 6:46 |
| 7 PM | 7:02, 7:24, 7:46 |
| 8 PM | 8:08, 8:30, 8:52 |
| 9 PM | 9:14, 9:36, 9:58 |
| 10 PM | 10:42 |
| 11 PM | 11:26 |
| After midnight | 12:10 AM, 12:54 AM (early Saturday — late-night Friday service) |
Service exceptions
July 1, 2026 and August 3, 2026 run the Sunday schedule.
Stampede (Jul 6–10): a special schedule applies on July 6, 2026, July 7, 2026, July 9, 2026, July 10, 2026.
Stampede (Jul 4–11): a special schedule applies on July 4, 2026, July 11, 2026.
Stampede (Jul 2): a special schedule applies on July 2, 2026.
Stampede (Jul 3): a special schedule applies on July 3, 2026.
Stampede (Jul 5): a special schedule applies on July 5, 2026.
Stampede (Jul 8): a special schedule applies on July 8, 2026.
Stampede (Jul 12): a special schedule applies on July 12, 2026.
Stampede (Jul 13): a special schedule applies on July 13, 2026.
Frequently asked questions
How often does Route 49 run?
On Monday–Friday & Stampede (Jul 6–10) & Stampede (Jul 2) & Stampede (Jul 3) & Stampede (Jul 8) & Stampede (Jul 13) days Route 49 runs about every 14 minutes at peak and every 22 minutes midday.
What time is the first and last Route 49 bus toward FOREST HEIGHTS?
On Monday–Friday & Stampede (Jul 6–10) & Stampede (Jul 2) & Stampede (Jul 3) & Stampede (Jul 8) & Stampede (Jul 13) days the first bus toward FOREST HEIGHTS leaves Marlborough LRT Station (SB 36 ST NE @ 8 AV NE) at 4:41 AM and the last at 12:54 AM.
Does Route 49 run on Sundays?
Yes — see the Sunday & holidays rows in the frequency tables above.