91³Ô¹ÏÍø

Watch CBS News

Pittsburgh Post-Gazette won't close, sold to nonprofit media organization

The Pittsburgh Post-Gazette will stay open after it was sold to a nonprofit.

In a joint press release on Tuesday, Block Communications announced that it sold the paper and its name to the Venetoulis Institute for Local Journalism, which is a nonprofit based in Baltimore, where it publishes another paper called the Baltimore Banner.

Nonprofit buys Post-Gazette

The institute is headed by a hotel magnate named Stewart Bainum Jr.,  who believes in a nonprofit model to save newspapers. It's a trend across the country as nonprofits have stepped in to take over newspapers, which are bleeding money. In announcing plans to close the paper in January, the Block family called operations "no longer sustainable," saying they had lost $350 million over the past two decades. 

"Local journalism is essential to a strong community, but across the country the business model has been under severe strain," Bainum said in the press release. "We believe there is a path forward — one that combines great journalism with a diversified business model built on scale and exceptional talent."

The news about the Post-Gazette's closure also came months after the union representing journalists returned to the newsroom following a three-year strike. Block Communications cited a court ruling in the union's favor as another reason for the closure. 

Post-Gazette will stay in Pittsburgh

Under the new agreement, the Post-Gazette, which was founded in 1786, will continue to serve western Pennsylvania, with the newsroom and local leadership based in Pittsburgh. But other functions like business operations will be combined with the Venetoulis Institute. 

"The Block family has worked to find the best possible source for responsible local journalism for the Pittsburgh region and we believe we have succeeded," Block Communications chairperson Karen Johnese said in the press release. "We are excited to hand our treasured paper over to such a committed and creative organization. We trust in their integrity and care for our community."

It's a relief to reporters, editors and photographers who got the news on Tuesday. 

"It's good news," sports writer Paul Zeise said. "The Post-Gazette has been around for how many years? It's good that it's going to go on. It sounds like they were really thoughtful about who they sold it to, you know what I mean? Now we just got to see what it looks like on May 4, but it sounds like it's a really good ownership group in terms of they care about journalism." 

The transaction is expected to take effect on May 4, a day after the paper was supposed to shut down. Details of the deal weren't disclosed, and some questions remain. Venetoulis said it will continue limited print editions but while the nonprofit is willing to absorb some of its financial losses, it's expected to reduce the Post-Gazette staff of 171, and staffers will likely need to reapply for their job going forward. 

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(); } }); }); }); });