Venues
Though primary sellers seem to be complying, resale sites still had major fees as of August 5.
By Catie Cheshire
August 5, 2024
Red Rocks has already implemented the policy.Ross Jones
We have a favor to ask
We're in the midst of our summer membership campaign, and we have until August 25 to raise $14,500. Your contributions are an investment in our election coverage – they help sustain our newsroom, help us plan, and could lead to an increase in freelance writers or photographers. If you value our work, please make a contribution today to help us reach our goal.
Progress to goal
$14,500
$1,750
Audio By Carbonatix
`,`
Related
- Olympus Discotheque Moves Into Former Triangle Bar
`,`
Related
- The Aztlan Theatre Examines Its Future: A Curtain Call or Second Act?
`,`
Related
- Curious Theatre Is Staying Optimistic After Announcing the Sale of Its Building
`,`
Related
`,`
Related
- More on That Red Rocks UFO Sighting...and the Lack of Photographs
`,`
Related
- Revival of The Bonfils Girl Tells the Story of Denver Legend Helen Bonfils
`,`
Related
- Road Trip: We Brake for Music at Desert Reef Hot Springs
`,`
Related
- Reader: Bar Bar Was Always an Adventure, and the Best Dive Ever!
`,`
Related
- Reader: Fans Will Travel Quite a Distance to See a Concert at Red Rocks
` ];
Prospective concert-goers at city venues including Red Rocks Amphitheatre will no longer face the disappointment of snagging tickets for a favorite act, then having to back out when they get to checkout and see how much fees and taxes add to the total.
On August 5, Denver Arts & Venues announced that all city-operated venues will now display all-inclusive pricing that includes all applicable taxes and fees from the get-go.
Along with Red Rocks, the change will impact the Colorado Convention Center and Bellco Theatre, the Denver Coliseum, the McNichols Civic Center Building and venues in the Denver Performing Arts Complex.
“This is a win for event and concertgoers in Colorado,” Brian Kitts, Denver Arts & Venues spokesperson says in an announcement of the change. “The all-in pricing prevents surprises during the check-out process and the legislation also starts to tackle behavior by unscrupulous re-sellers.”
The new pricing system was spurred by legislation signed by Governor Jared Polis earlier this year, which requires those up-front price disclosures and prohibits raising prices once a ticket has been selected for purchase. The legislation also requires event operators and ticket resellers to give customers full refunds if they buy counterfeit tickets or if events are canceled.
Polis had vetoed similar legislation in 2023, but after consumers encountered chaos while trying to get Taylor Swift and Bad Bunny tickets and Colorado joined a federal lawsuit calling out Live Nation and Ticketmaster over an alleged illegal monopoly, Polis signed this bill in June.
The legislation marks the first time that ticketing rules in Colorado have been updated since 2008, and customers will soon start seeing its effects across the state, with Denver Arts & Venues leading the way.
Westword tested both Ticketmaster and AXS, checking upcoming concerts at Fillmore Auditorium, the Paramount Theatre, Ball Arena and Mission Ballroom; all of the prices we found were all-inclusive.
But while major primary-market ticket sellers appear to be complying with the law, secondary market sales hadn't caught up — eventhough the legislation applies to event operators and resellers.
On August 5, Major ticket resale-market player StubHub still had major fees at checkout: an $85 fulfillment and service fee on a $222 Hozier ticket at Fiddler’s Green Amphitheatre, and a $116 service and fulfillment fee for a $316 ticket to see Wicked at the Buell Theatre, a Denver Arts & Venues location.
VividSeats, another secondary market site, also still wasn’t employing upfront prices on August 5, with over $80 in fees added to the price of Mt. Joy tickets at Red Rocks.
') let lineHeight = jQuery('[line-height-check]').get(0).clientHeight; jQuery('[line-height-check]').remove() if (jQuery(element).prop('tagName').match(/HIDDEN/i) !== null) { jQuery(element).children('div').last().css({ marginBottom: `${lineHeight*2}px` }); } else { jQuery(element).css({ marginTop: `${lineHeight*2}px`, marginBottom: `${lineHeight}px` }); } // const insertionBlockClass = `fdn-paragraph-insertion-block`; const styleElementHook = `fdn-paragraph-insertion-styles`; jQuery(element).addClass(insertionBlockClass); if (jQuery(`[${styleElementHook}]`).length === 0) { jQuery('div.fdn-content-body, div #storyBody').append('
') const paragraphLineHeight = jQuery('[line-height-check]').get(0).clientHeight; jQuery('[line-height-check]').remove() const styleElement = jQuery(`
`); const styleText = ` div.fdn-content-body br+.${insertionBlockClass}:not([hidden]), div #storyBody br+.${insertionBlockClass}:not([hidden]) { margin-top: ${paragraphLineHeight*2}px; margin-bottom: ${paragraphLineHeight}px; } div.fdn-content-body br+.${insertionBlockClass}[hidden] > div:last-of-type, div #storyBody br+.${insertionBlockClass}[hidden] > div:last-of-type { margin-bottom: ${paragraphLineHeight*2}px; } ` styleElement.text(styleText); jQuery('head').append(styleElement); } // } } jQuery(element).insertBefore(this.paragraphEndNodes[index]); } else { console.warn('Foundation.ParagraphTool.insertElemenAt: invalid insertion index', index); } } this.insertElemenAtEnd = function (element) { if (this.paragraphEndNodes.length) { let lastNode = this.getNodeAtIndex(this.paragraphEndNodes.length -1); if (this.isDoubleBrParagraphBreak(lastNode) || this.isBrParagraphBreakBeforeBlockElement(lastNode)) { if (jQuery(element).get(0).tagName.match(/SCRIPT/i) !== null) { jQuery('
').insertAfter(this.paragraphEndNodes[index]); jQuery('
').insertAfter(this.paragraphEndNodes[index]); } else { jQuery('div.fdn-content-body, div #storyBody').append('
') let lineHeight = jQuery('[line-height-check]').get(0).clientHeight; jQuery('[line-height-check]').remove() if (jQuery(element).prop('tagName').match(/HIDDEN/i) !== null) { jQuery(element).children('div').last().css({ marginBottom: `${lineHeight*2}px` }); } else { jQuery(element).css({ marginTop: `${lineHeight*2}px`, marginBottom: `${lineHeight}px` }); } } } } this.bodyContainer.append(element); } this.getNodeAtIndex = function (index) { return this.paragraphEndNodes[index]; } }
`); } var paragraphCount = myParagraphTool.getParagraphEndNodeCount(); // No need to insert if there aren't enough paragaphs if (paragraphCount >= parseInt(item.requiredCountToDisplay)) { // Matches specific paragraph insertion indexes if (item.insertPoint.match(/^\d+$/) !== null) { var insertIndex = parseInt(item.insertPoint) - 1; // Insert within content if (insertIndex < paragraphCount) { myParagraphTool.insertElemenAtIndex(componentElement, insertIndex); } // Append to the end if the insert point is beyond the paragraph count else { myParagraphTool.insertElemenAtEnd(componentElement) } } // Matches for 1/2, 1/4, 2/3, 5/6, etc else if (item.insertPoint.match(/^[1223456]\/[23456]$/) !== null) { var fractionMatch = new RegExp(/^([123456])(?:\/)([23456]$)/); var fractionPart = parseInt(item.insertPoint.match(fractionMatch)[1]); var fractionWhole = parseInt(item.insertPoint.match(fractionMatch)[2]); var fractionValue = fractionPart / fractionWhole; var fractionIndex = Math.floor(myParagraphTool.paragraphEndNodes.length * fractionValue) - 1; myParagraphTool.insertElemenAtIndex(componentElement, fractionIndex); } // Matches for every Nth insertion point else if (item.insertPoint.match(/^\d*th$/i) !== null) { var intervalIndex = parseInt(item.insertPoint.match(/^(\d*)th$/i)[1]); var startingIndex = parseInt(item.startingPoint) - 1; var insertionMax = parseInt(item.maxInsertions) || 100; var insertionCount = 0; for (var i = startingIndex; i < myParagraphTool.paragraphEndNodes.length && insertionCount < insertionMax; i++) { if ((i - startingIndex) % intervalIndex === 0) { let currentNode = myParagraphTool.getNodeAtIndex(i); const clonedComponent = componentElement.clone(); myParagraphTool.insertElemenAtIndex(clonedComponent, i); insertionCount++; } } } } }); Foundation.Content['21564188'].setupInlineComponents = function () { return true; }; if (typeof callback === 'function') { callback(); } }, 200); } Foundation.Content['21564188'].previewInsertionPoints = function () { var myParagraphTool = Foundation.Content['21564188'].paragraphTool myParagraphTool.paragraphEndNodes.each((index, item) => { const insertionPointPlaceholder = jQuery(`
`) myParagraphTool.insertElemenAtIndex(insertionPointPlaceholder, index); }); return 'Paragraph insertion placeholders applied.'; }