×
Categories
${ res.pages.map(p => { return `
${p.meta_value[0]} ${p.meta_value}` }).join('') }
Performers
${ res.performers.map(p => { return `
${p.name[0]} ${p.name}` }).join('') }
Venues
${ res.venues.map(p => { return `
${p.name[0]} ${p.name}` }).join('') }
Events
${ res.events.map(p => { return `
${p.month} ${p.day}, ${p.year} ${p.time} ${p.post_title}` }).join('') }
Discover the best Broadway shows in Houston for the 2024/2025 season!
Explore a comprehensive listing showcasing the diverse array of present Broadway productions gracing the stages of Houston. Immerse yourself in the city’s vibrant theater scene as the schedule of shows undergoes daily updates, ensuring the most up-to-date information. Some popular theater venues in the city include Sarofim Hall – Hobby Center and Hubbard Stage – Alley Theatre. Find your favorite Broadway shows and buy verified theater tickets now.
Contents
Upcoming Shows
List Of All Shows
Houston, Texas
Broadway Shows 2024/2025
Reset
Cancel
Apply
Upcoming Shows: 245
Jun
16
2024
7:00 PM
Sun
Dial M For Murder
Hubbard Stage - Alley Theatre | Capacity: 824
77002, 614 Texas Avenue, Houston, TX, US
TicketsPrices from $87
Avg. price ~ $136
30 tickets remaining!
Jun
18
2024
7:30 PM
Tue
Dial M For Murder
Hubbard Stage - Alley Theatre | Capacity: 824
77002, 614 Texas Avenue, Houston, TX, US
TicketsPrices from $60
Avg. price ~ $206
42 tickets remaining!
Jun
19
2024
7:30 PM
Wed
Dial M For Murder
Hubbard Stage - Alley Theatre | Capacity: 824
77002, 614 Texas Avenue, Houston, TX, US
TicketsPrices from $60
Avg. price ~ $183
49 tickets remaining!
Jun
20
2024
7:30 PM
Thu
Dial M For Murder
Hubbard Stage - Alley Theatre | Capacity: 824
77002, 614 Texas Avenue, Houston, TX, US
TicketsPrices from $71
Avg. price ~ $108
Available Tickets: 52
Jun
21
2024
8:00 PM
Fri
Dial M For Murder
Hubbard Stage - Alley Theatre | Capacity: 824
77002, 614 Texas Avenue, Houston, TX, US
TicketsPrices from $71
Avg. price ~ $135
Available Tickets: 70
Jun
22
2024
2:00 PM
Sat
Dial M For Murder
Hubbard Stage - Alley Theatre | Capacity: 824
77002, 614 Texas Avenue, Houston, TX, US
TicketsPrices from $82
Avg. price ~ $217
Available Tickets: 67
Jun
22
2024
8:00 PM
Sat
Dial M For Murder
Hubbard Stage - Alley Theatre | Capacity: 824
77002, 614 Texas Avenue, Houston, TX, US
TicketsPrices from $93
Avg. price ~ $176
Available Tickets: 70
Jun
See AlsoNew/Now | Theaters & Performing Arts Event in Houston, TXUpcoming Theatre Events in Houston, TXYour Guide to June in Houston23
2024
2:00 PM
Sun
Dial M For Murder
Hubbard Stage - Alley Theatre | Capacity: 824
77002, 614 Texas Avenue, Houston, TX, US
TicketsPrices from $102
Avg. price ~ $194
35 tickets remaining!
Jun
25
2024
7:30 PM
Tue
Dial M For Murder - The Play
Hubbard Stage - Alley Theatre | Capacity: 824
77002, 614 Texas Avenue, Houston, TX, US
TicketsPrices from $90
Avg. price ~ $256
49 tickets remaining!
Jun
26
2024
7:30 PM
Wed
Dial M For Murder - The Play
Hubbard Stage - Alley Theatre | Capacity: 824
77002, 614 Texas Avenue, Houston, TX, US
TicketsPrices from $94
Avg. price ~ $304
39 tickets remaining!
Jun
27
2024
7:30 PM
Thu
Dial M For Murder - The Play
Hubbard Stage - Alley Theatre | Capacity: 824
77002, 614 Texas Avenue, Houston, TX, US
TicketsPrices from $92
Avg. price ~ $261
45 tickets remaining!
Jun
28
2024
8:00 PM
Fri
Dial M For Murder - The Play
Hubbard Stage - Alley Theatre | Capacity: 824
77002, 614 Texas Avenue, Houston, TX, US
TicketsPrices from $108
Avg. price ~ $273
49 tickets remaining!
Jun
29
2024
2:00 PM
Sat
Dial M For Murder - The Play
Hubbard Stage - Alley Theatre | Capacity: 824
77002, 614 Texas Avenue, Houston, TX, US
TicketsPrices from $91
Avg. price ~ $303
Available Tickets: 51
Jun
29
2024
8:00 PM
Sat
Dial M For Murder - The Play
Hubbard Stage - Alley Theatre | Capacity: 824
77002, 614 Texas Avenue, Houston, TX, US
TicketsPrices from $136
Avg. price ~ $339
43 tickets remaining!
Jun
30
2024
2:00 PM
Sun
Dial M For Murder - The Play
Hubbard Stage - Alley Theatre | Capacity: 824
77002, 614 Texas Avenue, Houston, TX, US
TicketsPrices from $122
Avg. price ~ $327
47 tickets remaining!
Jul
05
2024
7:30 PM
Fri
Les Miserables - School Edition
Sarofim Hall - Hobby Center | Capacity: 2650
77002, 800 Bagby St, Houston, TX, US
TicketsPrices from $58
Avg. price ~ $353
Available Tickets: 66
Jul
06
2024
2:00 PM
Sat
Les Miserables - School Edition
Sarofim Hall - Hobby Center | Capacity: 2650
77002, 800 Bagby St, Houston, TX, US
TicketsPrices from $58
Avg. price ~ $339
Available Tickets: 74
Jul
11
2024
1:00 PM
Thu
The Lion King
Sarofim Hall - Hobby Center | Capacity: 2650
77002, 800 Bagby St, Houston, TX, US
TicketsPrices from $78
Avg. price ~ $329
Available Tickets: 98
Jul
11
2024
7:30 PM
Thu
The Lion King
Sarofim Hall - Hobby Center | Capacity: 2650
77002, 800 Bagby St, Houston, TX, US
TicketsPrices from $50
Avg. price ~ $262
Available Tickets: 203
Jul
12
2024
8:00 PM
Fri
The Lion King
Sarofim Hall - Hobby Center | Capacity: 2650
77002, 800 Bagby St, Houston, TX, US
TicketsPrices from $83
Avg. price ~ $252
Available Tickets: 312
Jul
13
2024
2:00 PM
Sat
The Lion King
Sarofim Hall - Hobby Center | Capacity: 2650
77002, 800 Bagby St, Houston, TX, US
TicketsPrices from $106
Avg. price ~ $344
Available Tickets: 197
Jul
13
2024
8:00 PM
Sat
The Lion King
Sarofim Hall - Hobby Center | Capacity: 2650
77002, 800 Bagby St, Houston, TX, US
TicketsPrices from $67
Avg. price ~ $225
Available Tickets: 492
Jul
14
2024
1:00 PM
Sun
The Lion King
Sarofim Hall - Hobby Center | Capacity: 2650
77002, 800 Bagby St, Houston, TX, US
TicketsPrices from $82
Avg. price ~ $314
Available Tickets: 253
Jul
14
2024
6:30 PM
Sun
The Lion King
Sarofim Hall - Hobby Center | Capacity: 2650
77002, 800 Bagby St, Houston, TX, US
TicketsPrices from $62
Avg. price ~ $249
Available Tickets: 173
Jul
16
2024
7:30 PM
Tue
The Lion King
Sarofim Hall - Hobby Center | Capacity: 2650
77002, 800 Bagby St, Houston, TX, US
TicketsPrices from $57
Avg. price ~ $194
Available Tickets: 713
Jul
17
2024
7:30 PM
Wed
The Lion King
Sarofim Hall - Hobby Center | Capacity: 2650
77002, 800 Bagby St, Houston, TX, US
TicketsPrices from $57
Avg. price ~ $194
Available Tickets: 599
Jul
18
2024
7:30 PM
Thu
The Lion King
Sarofim Hall - Hobby Center | Capacity: 2650
77002, 800 Bagby St, Houston, TX, US
TicketsPrices from $56
Avg. price ~ $201
Available Tickets: 545
Jul
19
2024
8:00 PM
Fri
The Lion King
Sarofim Hall - Hobby Center | Capacity: 2650
77002, 800 Bagby St, Houston, TX, US
TicketsPrices from $84
Avg. price ~ $197
Available Tickets: 783
Jul
20
2024
2:00 PM
Sat
The Lion King
Sarofim Hall - Hobby Center | Capacity: 2650
77002, 800 Bagby St, Houston, TX, US
TicketsPrices from $88
Avg. price ~ $302
Available Tickets: 259
Jul
20
2024
8:00 PM
Sat
The Lion King
Sarofim Hall - Hobby Center | Capacity: 2650
77002, 800 Bagby St, Houston, TX, US
TicketsPrices from $79
Avg. price ~ $207
Available Tickets: 896
Show More
`citiesList.insertAdjacentHTML('beforeend', cityRow)})}}function setCity(elem, id) {cityInp.value = elem.textContentcitiesList.style.display = 'none'scheduleBox.setAttribute('data-page', 0);paramsCity = '&city=' + idloaderAnim.classList.remove('hidden-loader')loadSchedulePage()}document.addEventListener('click', (e) => {const withinBoundaries = e.composedPath().includes(cityWrap);if (!withinBoundaries) {citiesList.style.display = 'none'}})}function nextCalendar() {curMonth++;if (curMonth > 12) {curMonth = 1curYear++;}createCalendars(calendarBlock, curYear, curMonth)}function prevCalendar() {curMonth--;if (curMonth < 1) {curMonth = 12curYear--;}if (curYear === todayYear && curMonth <= todayMonth) {curMonth = todayMonth;curYear = todayYear;}createCalendars(calendarBlock, curYear, curMonth)}function resetFilter() {if (selected1 !== 0) {selectionIndex = 1;selected1 = 0;selected2 = 0;fstring = '';fltrTitle.innerHTML = 'Select Your Dates'fltrBtn.addEventListener('click', openFilter, true)scheduleBox.setAttribute('data-page', 0);params = ''} else {fltrBtn.addEventListener('click', openFilter, true)}createCalendars(calendarBlock, curYear, curMonth)loaderAnim.classList.remove('hidden-loader')loadSchedulePage()}function clearFilter() {fltrBtn.classList.remove('fltr-opened');fltrBtn.addEventListener('click', openFilter, true);}function applyFilter() {if (fstring !== '') {fltrTitle.innerHTML = fstringif (selected2 === 0) {scheduleBox.setAttribute('data-page', 0);let m = (Number(selected1.toString().substr(4, 2)) + 1).toString()if (m.length === 1) {m = '0' + m}params = '&start_date=' + selected1.toString().substr(0, 4) + '-' + m + '-' + selected1.toString().substr(6, 2)} else {scheduleBox.setAttribute('data-page', 0);let m = (Number(selected1.toString().substr(4, 2)) + 1).toString()if (m.length === 1) {m = '0' + m}let m2 = (Number(selected2.toString().substr(4, 2)) + 1).toString()if (m2.length === 1) {m2 = '0' + m2}params = '&start_date=' + selected1.toString().substr(0, 4) + '-' + m + '-' + selected1.toString().substr(6, 2)params = params + '&end_date=' + selected2.toString().substr(0, 4) + '-' + m2 + '-' + selected2.toString().substr(6, 2)}loaderAnim.classList.remove('hidden-loader');loadSchedulePage()}fltrBtn.classList.remove('fltr-opened');fltrBtn.addEventListener('click', openFilter, true)}fltrBtn.addEventListener('click', openFilter, true)// closeFltr.addEventListener('click', closeFilter, true)function openFilter(event) {event.stopPropagation()fltrBtn.classList.add('fltr-opened');fltrBtn.removeEventListener('click', openFilter, true)createCalendars(calendarBlock, curYear, curMonth)}function closeFilter(event) {event.stopPropagation()fltrBtn.classList.remove('fltr-opened');fltrBtn.addEventListener('click', openFilter, true)}function selectDate(d, m, y) {let daystring = d.toString()if (daystring.length === 1) {daystring = '0' + daystring}let monstring = m.toString()if (monstring.length === 1) {monstring = '0' + monstring}let s = Number(y.toString() + monstring + daystring)let monstr = new Date(y, m).toLocaleString('en', {month: 'short'})if (selectionIndex === 1) {selected2 = 0;selected1 = sfstring = monstr + ' ' + daystring + ', ' + y}if (selectionIndex === 2) {selected2 = s;if (selected1 > selected2) {selected2 = selected1selected1 = sfstring = monstr + ' ' + daystring + ', ' + y + ' - ' + fstring} else {fstring = fstring + ' - ' + monstr + ' ' + daystring + ', ' + y}selectionIndex = 0}selectionIndex++createCalendars(calendarBlock, curYear, curMonth)}function createCalendars(elem, year, month) {let year1 = year;let year2 = year;let mon1 = month - 1;let mon2 = mon1 + 1;if (mon2 > 11) {mon2 = 0year2 = year + 1;}let d1 = new Date(year1, mon1);let d2 = new Date(year2, mon2);let m1str = new Date(year1, mon1).toLocaleString('en', {month: 'long'});let m2str = new Date(year2, mon2).toLocaleString('en', {month: 'long'});let calendarBody1 = ''let calendarBody2 = ''for (let i = 0; i < getDay(d1); i++) {calendarBody1 += `
`;}for (let i = 0; i < getDay(d2); i++) {calendarBody2 += `
`;}while (d1.getMonth() == mon1) {let daystring = d1.getDate().toString()if (daystring.length === 1) {daystring = '0' + daystring}let monstring = mon1.toString()if (monstring.length === 1) {monstring = '0' + monstring}let selstring = Number(year1.toString() + monstring + daystring)if (d1 >= (new Date(mindate))) {if (selected1 === selstring && selected2 === 0) {calendarBody1 += '
` + d1.getDate() + '
';d1.setDate(d1.getDate() + 1);} else if (selected1 === selstring && selected2 !== 0) {calendarBody1 += '
` + d1.getDate() + '
';d1.setDate(d1.getDate() + 1);} else if (selected2 === selstring) {calendarBody1 += '
` + d1.getDate() + '
';d1.setDate(d1.getDate() + 1);} else if (selected1 < selstring && selected2 > selstring) {calendarBody1 += '
` + d1.getDate() + '
';d1.setDate(d1.getDate() + 1);} else {calendarBody1 += '
` + d1.getDate() + '
';d1.setDate(d1.getDate() + 1);}} else {calendarBody1 += '
' + d1.getDate() + '
';d1.setDate(d1.getDate() + 1);}}while (d2.getMonth() == mon2) {let daystring = d2.getDate().toString()if (daystring.length === 1) {daystring = '0' + daystring}let monstring = mon2.toString()if (monstring.length === 1) {monstring = '0' + monstring}let selstring = Number(year2.toString() + monstring + daystring)if (d2 >= (new Date(mindate))) {if (selected1 === selstring && selected2 === 0) {calendarBody2 += '
` + d2.getDate() + '
';d2.setDate(d2.getDate() + 1);} else if (selected1 === selstring && selected2 !== 0) {calendarBody2 += '
` + d2.getDate() + '
';d2.setDate(d2.getDate() + 1);} else if (selected2 === selstring) {calendarBody2 += '
` + d2.getDate() + '
';d2.setDate(d2.getDate() + 1);} else if (selected1 < selstring && selected2 > selstring) {calendarBody2 += '
` + d2.getDate() + '
';d2.setDate(d2.getDate() + 1);} else {calendarBody2 += '
` + d2.getDate() + '
';d2.setDate(d2.getDate() + 1);}} else {calendarBody2 += '
' + d2.getDate() + '
';d2.setDate(d2.getDate() + 1);}}if (getDay(d1) != 0) {for (let i = getDay(d1); i < 7; i++) {calendarBody1 += '
';}}if (getDay(d2) != 0) {for (let i = getDay(d2); i < 7; i++) {calendarBody2 += '
';}}let calendar1 = ``;let calendar2 = ``;if (window.innerWidth <= 800) {calendar1 = `
${m1str}, ${year1}
Sun
Mon
Tue
Wed
Thu
Fri
Sat
${calendarBody1}
`;calendar2 = `
${m2str}, ${year2}
Sun
Mon
Tue
Wed
Thu
Fri
Sat
${calendarBody2}
`;} else {calendar1 = `
Sun
Mon
Tue
Wed
Thu
Fri
Sat
${calendarBody1}
`;calendar2 = `
Sun
Mon
Tue
Wed
Thu
Fri
Sat
${calendarBody2}
`;}let prevContol = `
`if (curMonth === todayMonth && curYear === todayYear) {prevContol = ``}let calendars = ``if (window.innerWidth <= 800) {calendars = `
${prevContol}
${calendar1 + calendar2}
`;} else {calendars = `
${prevContol}
${m1str}, ${year1}
${m2str}, ${year2}
${calendar1 + calendar2}
`;}elem.innerHTML = calendars;}function getDay(date) {let day = date.getDay();return day;}fltrBtn.style.display = 'block';function applyScheduleFilter(categories, city) {selected1 = document.querySelector('.v-start-date').getAttribute('data-data')selected2 = document.querySelector('.v-end-date').getAttribute('data-data')fstring = `${document.querySelector('.v-start-date').innerHTML} - ${document.querySelector('.v-end-date').innerHTML}`if (fstring !== '') {fltrTitle.innerHTML = fstringif (selected2 === 0) {scheduleBox.setAttribute('data-page', 0);let m = (Number(selected1.toString().substr(4, 2))).toString()if (m.length === 1) {m = '0' + m}params = '&start_date=' + selected1.toString().substr(0, 4) + '-' + m + '-' + selected1.toString().substr(6, 2)} else {scheduleBox.setAttribute('data-page', 0);let m = (Number(selected1.toString().substr(4, 2))).toString()if (m.length === 1) {m = '0' + m}let m2 = (Number(selected2.toString().substr(4, 2))).toString()if (m2.length === 1) {m2 = '0' + m2}params = '&start_date=' + selected1.toString().substr(0, 4) + '-' + m + '-' + selected1.toString().substr(6, 2)params = params + '&end_date=' + selected2.toString().substr(0, 4) + '-' + m2 + '-' + selected2.toString().substr(6, 2)}if (categories) {params += `&categories=${categories}`}if (city) {params += `&city=${city}`}loaderAnim.classList.remove('hidden-loader');loadSchedulePage()}fltrBtn.classList.remove('fltr-opened');fltrBtn.addEventListener('click', openFilter, true)}