91³Ô¹ÏÍø

Watch CBS News

World Cup MBTA train tickets to Gillette Stadium will reportedly be $75 or more as T looks to recover costs

The MBTA is reportedly planning to charge $75 or more for round-trip train tickets to Gillette Stadium for the World Cup, far more than what sports fans who take the Commuter Rail to Foxboro are used to paying.

was the first to report on the planned price hike.

An MBTA spokesperson refused to confirm the $75 ticket price to CBS News Boston Friday. But the agency says it has poured a lot of money into getting ready for the World Cup, and it's aiming to get some of that back with the increased ticket costs.

"The MBTA has taken on a $35 million project to upgrade Foxboro Station in advance of this World Cup, including making it fully accessible," the agency said in a statement. "The T plans to run an unprecedented amount of service for the World Cup, mobilizing up to 20,000 riders to and from each match, and we're excited to serve the global community of soccer fans coming to Massachusetts."

The price will be revealed by April 8, when the special train tickets go on sale in the MBTA's .

Typically, round-trip train tickets to Gillette Stadium for New England Patriots games, New England Revolution matches, and concerts are $20. Tickets were $30 for Thursday's friendly match at the stadium between Brazil and France, and about 2,300 fans took advantage of four special trains. 

Criticism from World Cup fans

The , a group supporting soccer fans in England and Wales, is among those criticizing the potentially steep price for World Cup train tickets in Massachusetts.

"We await official mobility plans for each host city at the World Cup. Naturally, we sincerely hope this doesn't transpire," the group said in response to The Athletic article. "This must be revisited if true, supporters should be welcomed and not seen as a constant cash cow for as long as the World Cup goes on."

The T has said it's committed to moving 20,000 passengers on up to 14 trains between Boston and Foxboro via Commuter Rail for each of the seven World Cup matches in June and July. Unlike typical special event trains that make multiple stops, the World Cup trains will be nonstop from Boston's South Station to Foxboro Station before and after matches.

World Cup parking at Gillette Stadium

Thinking of driving to Foxboro instead? Parking will be reduced drastically around Gillette Stadium for World Cup matches.

Instead of the usual 20,000 parking spots that are available for Patriots games, there will only be 5,000 spots for World Cup fan parking. T officials say a wider safety perimeter is needed around the stadium for security reasons, as well as hospitality events that will take up space in the parking areas. 

View CBS News In
CBS News App Open
Chrome Safari Continue
const link = doc.createElement('link'); link.rel = 'stylesheet'; link.href = '/fly/fly/bundles/cbsnewscontent/css/cmp-banner.min.css?v=50747257b890e014813016b79ece0fb2'; doc.head.appendChild(link); doc.body.innerHTML = CONSENT_MESSAGE; } else { el.insertAdjacentHTML('afterend', CONSENT_MESSAGE); } }); } function hidePrivacyMessage() { // Remove from the main document document.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); // Remove from inside any iframes document.querySelectorAll('iframe').forEach(iframe => { const doc = iframe.contentDocument || iframe.contentWindow.document; doc.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); }); } function activateGatedScripts() { // Handle both new format (cmp-gated-script) and old OneTrust/Ketch format (optanon-category-4) const gatedScripts = Array.from(document.querySelectorAll('script.cmp-gated-script, script.optanon-category-4')); // Activate scripts sequentially with a small delay to avoid timing issues let delay = 0; gatedScripts.forEach(function(placeholder, index) { setTimeout(function() { // Skip if already processed if (placeholder.hasAttribute('data-cmp-processed')) { return; } placeholder.setAttribute('data-cmp-processed', 'true'); const newScript = document.createElement('script'); newScript.type = 'text/javascript'; // Try new format first (data-cmp-src), then fall back to old format (data-src) const src = placeholder.getAttribute('data-cmp-src') || placeholder.getAttribute('data-src'); if (src) { newScript.src = src; } else if (placeholder.textContent) { // Inline script - just copy the content newScript.textContent = placeholder.textContent; } // Handle new format attributes (data-cmp-attrs) - for both inline and external scripts const attrs = placeholder.getAttribute('data-cmp-attrs'); if (attrs) { const tempDiv = document.createElement('div'); tempDiv.innerHTML = '
<\/div>'; const tempAttrs = tempDiv.firstChild.attributes; for (let i = 0; i < tempAttrs.length; i++) { // For external scripts, allow defer/async. For inline scripts, skip them (not valid) if (src || (tempAttrs[i].name !== 'async' && tempAttrs[i].name !== 'defer')) { newScript.setAttribute(tempAttrs[i].name, tempAttrs[i].value); } } } // Copy other attributes from old OneTrust format for (let i = 0; i < placeholder.attributes.length; i++) { const attr = placeholder.attributes[i]; // Skip attributes we've already handled or don't want to copy if (!['class', 'data-src', 'data-type', 'data-cmp-src', 'data-cmp-attrs', 'data-cmp-processed', 'type', 'async', 'defer', 'src'].includes(attr.name)) { newScript.setAttribute(attr.name, attr.value); } } placeholder.parentNode.replaceChild(newScript, placeholder); // If external script, manually trigger window.onload handlers after it loads // This handles widgets that use window.onload for initialization if (src) { newScript.addEventListener('load', function() { // If page already loaded and script set a new onload handler, trigger it if (document.readyState === 'complete' && window.onload) { const originalOnload = window.onload; window.onload = null; // Clear temporarily to prevent loops originalOnload(); // Execute the handler } }); } }, delay); delay += 500; // 500ms delay between each script to allow full loading }); } cbsoptanon.onScriptsReady(function(cmp) { cmp.ot.targetingAllowed(function(allowed) { if (!allowed) { showPrivacyMessage(); } else { activateGatedScripts(); } }); cmp.ot.awaitInitialConsent(function(consent_model) { cmp.ot.addOnConsentChangedHandler(function() { cmp.ot.targetingAllowed(function(allowed) { if (allowed) { hidePrivacyMessage(); activateGatedScripts(); } else { showPrivacyMessage(); } }); }); }); });