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, Sunday & holidays, Saturday (Jul 18 – Aug 29), Stampede (Jul 6–10), Tuesday–Thursday, Stampede (Jul 4–11), Friday, Saturday (Jun 20), Sunday (Jun 21), Saturday (Jun 27), Sunday (Jun 28), Stampede (Jul 2), Stampede (Jul 3), Stampede (Jul 5), Stampede (Jul 8), Stampede (Jul 12) and Stampede (Jul 13) days. On Monday & Stampede (Jul 2–10) & Jun 23 – Aug 28 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 16 – Aug 30, 2026.
Service alerts
No alerts currently listed for this route — live alert list at /alerts/, updated every 10 minutes.
Frequency & span — toward FOREST HEIGHTS
| Days | First | Last | Peak | Midday | Evening |
|---|---|---|---|---|---|
| Monday & Stampede (Jul 2–10) & Jun 23 – Aug 28 | 4:41 AM | 12:54 AM | every 14 min | every 22 min | every 22 min |
| Sunday & holidays | 5:50 AM | 12:39 AM | every 35 min | every 37 min | every 36 min |
| Saturday | 5:20 AM | 12:41 AM | every 39 min | every 43 min | every 43 min |
| Tuesday–Thursday | 4:41 AM | 12:54 AM | every 14 min | every 22 min | every 22 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
| 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) |
| 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) |
| 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 (early Sunday — late-night Saturday service) |
| 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) |
| 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) |
Stops served — toward FOREST HEIGHTS
36 stops, in order of travel:
- Stop 6765 — Marlborough LRT Station (SB 36 ST NE @ 8 AV NE)
- Stop 8123 — SB 36 ST NE @ 5 AV NE
- Stop 6761 — SB 36 ST E @ Memorial DR
- Stop 6184 — SB 36 ST SE @ Radcliffe DR
- Stop 6185 — EB 8 AV SE @ 36 ST SE
- Stop 6381 — EB 8 AV SE @ 40 ST SE
- Stop 6219 — EB 8 AV SE @ 44 ST SE
- Stop 4336 — EB 8 AV SE @ 47 ST SE
- Stop 4335 — EB 8 AV SE @ 52 ST SE
- Stop 2850 — EB 8 AV SE @ Pensdale RD
- Stop 5065 — EB 8 AV SE @ Pensacola WY
- Stop 8836 — EB Penbrooke DR @ 60 ST SE
- Stop 8837 — EB Penbrooke DR @ Penedo WY SE
- Stop 8838 — NB Penbrooke DR @ Penbrooke RD SE
- Stop 5066 — NB Penbrooke DR @ 4 AV SE
- Stop 5068 — NB Penbrooke DR @ Penbrooke Terminal SE
- Stop 6170 — EB Memorial DR @ 68 ST SE
- Stop 4369 — NB Abbeydale DR @ Memorial DR E
- Stop 6172 — NB Abbeydale DR @ 4 AV NE
- Stop 4367 — NB Abbeydale DR @ Abalone CR NE
- Stop 4368 — NB Abbeydale DR @ Aberdare CR NE
- Stop 6155 — WB Abbeydale DR @ Abbotsford DR NE
- Stop 4374 — WB Abbeydale DR @ Aboyne WY NE
- Stop 2851 — WB Abbeydale DR @ 68 ST NE
- Stop 2852 — NB Madigan DR @ 8 AV NE
- Stop 4333 — NB Madigan DR @ Maitland DR NE
- Stop 6224 — WB Madigan DR @ Manora DR NE
- Stop 4332 — WB Madigan DR @ Manora HL NE
- Stop 4331 — WB Madigan DR @ Madeira DR NE
- Stop 6225 — WB Marbank DR @ 52 ST NE
- Stop 8126 — WB Marbank DR @ Mardale RD NE
- Stop 8130 — WB Marbank DR @ Mardale DR NE
- Stop 8128 — WB Marbank DR @ Marlyn WY NE
- Stop 6226 — WB Marbank DR @ Marlyn WY NE
- Stop 6026 — SB 36 ST NE @ 12 AV NE
- Stop 6765 — Marlborough LRT Station (SB 36 ST NE @ 8 AV NE)
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 & Stampede (Jul 2–10) & Jun 23 – Aug 28 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 & Stampede (Jul 2–10) & Jun 23 – Aug 28 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.