ADVERTISEMENT

Diversification shields San Miguel as core profit outpaces revenue

Published Mar 16, 2026 06:49 pm
San Miguel Corp., the Philippines’ largest conglomerate by sales, reported a 52 percent surge in full-year core net income as improved margins and aggressive cost discipline across its diverse portfolio offset a slight dip in consolidated revenue.
Core net income reached ₱79.6 billion in 2025, up from ₱52.3 billion a year earlier, the company said in an emailed statement. Reported net income, which includes one-time items, jumped 158 percent to ₱94.7 billion, bolstered by fair valuation gains on investments and favorable foreign exchange movements. 
Operating income rose 13 percent to ₱181.6 billion, while earnings before interest, taxes, depreciation, and amortization increased 16 percent to ₱262.0 billion.
Management attributed the growth to better operating performance, lower input costs, and strategic pricing initiatives. However, consolidated revenue softened to ₱1.5 trillion from ₱1.6 trillion in 2024. The decline was largely due to lower crude prices affecting the oil segment and the de-consolidation of the Ilijan and EERI power facilities.
“Our 2025 performance shows the value of having a diversified portfolio and a clear focus on execution,” Ramon S. Ang, San Miguel chairman and chief executive officer said.
He noted that the company remains disciplined in its investment approach while pursuing long-term value.
The group’s food and beverage unit, San Miguel Food and Beverage Inc., saw consolidated net income rise 13 percent to ₱46.3 billion. Within that segment, the food division recorded ₱196.3 billion in revenue, a six percent increase, fueled by strong demand for poultry and animal feeds. Net income for the food business surged 38 percent to ₱11.6 billion.
The beer business, San Miguel Brewery Inc., maintained a steady performance with ₱155.4 billion in revenue. While top-line growth was flat, the unit kept net income at ₱26.5 billion through portfolio optimization and cost management.
Meanwhile, the spirits arm, Ginebra San Miguel Inc., saw a 20 percent jump in net income to ₱8.7 billion, driven by an eight percent increase in revenue to ₱67.4 billion.
In the energy sector, San Miguel Global Power’s revenue fell 23 percent to ₱157.2 billion after the divestment of key power plants. Despite the drop in volume, net income surged to ₱48.3 billion, aided by a ₱21.9 billion gain from its Chromite transaction.
Excluding one-off items, the power unit’s net income more than doubled to ₱26.4 billion as margins expanded.
Petron Corp., the group's oil refining and marketing arm, delivered its strongest financial performance to date. Net income for the fuel retailer soared 84 percent to ₱15.6 billion, supported by domestic volume growth and higher productivity at its refineries in the Philippines and Malaysia.
The conglomerate's infrastructure unit also maintained its upward trajectory. Revenue from toll roads rose seven percent to ₱40.2 billion as average daily traffic reached 1.08 million vehicles. The division's net income grew five percent to ₱14.8 billion.
The cement business, which includes Eagle Cement Corp., was the primary laggard, with revenue falling five percent to ₱33.2 billion. The company cited softer demand and pricing pressure from a continuous influx of imported cement, though it managed to maintain margins through operational efficiencies.

Related Tags

San Miguel Corporation Ramon S. Ang
ADVERTISEMENT
.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1561_widget.title }}

.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1562_widget.title }}

.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1563_widget.title }}

{{ articles_filter_1564_widget.title }}

.mb-article-details { position: relative; } .mb-article-details .article-body-preview, .mb-article-details .article-body-summary{ font-size: 17px; line-height: 30px; font-family: "Libre Caslon Text", serif; color: #000; } .mb-article-details .article-body-preview iframe , .mb-article-details .article-body-summary iframe{ width: 100%; margin: auto; } .read-more-background { background: linear-gradient(180deg, color(display-p3 1.000 1.000 1.000 / 0) 13.75%, color(display-p3 1.000 1.000 1.000 / 0.8) 30.79%, color(display-p3 1.000 1.000 1.000) 72.5%); position: absolute; height: 200px; width: 100%; bottom: 0; display: flex; justify-content: center; align-items: center; padding: 0; } .read-more-background a{ color: #000; } .read-more-btn { padding: 17px 45px; font-family: Inter; font-weight: 700; font-size: 18px; line-height: 16px; text-align: center; vertical-align: middle; border: 1px solid black; background-color: white; } .hidden { display: none; }
function initializeAllSwipers() { // Get all hidden inputs with cms_article_id document.querySelectorAll('[id^="cms_article_id_"]').forEach(function (input) { const cmsArticleId = input.value; const articleSelector = '#article-' + cmsArticleId + ' .body_images'; const swiperElement = document.querySelector(articleSelector); if (swiperElement && !swiperElement.classList.contains('swiper-initialized')) { new Swiper(articleSelector, { loop: true, pagination: false, navigation: { nextEl: '#article-' + cmsArticleId + ' .swiper-button-next', prevEl: '#article-' + cmsArticleId + ' .swiper-button-prev', }, }); } }); } setTimeout(initializeAllSwipers, 3000); const intersectionObserver = new IntersectionObserver( (entries) => { entries.forEach((entry) => { if (entry.isIntersecting) { const newUrl = entry.target.getAttribute("data-url"); if (newUrl) { history.pushState(null, null, newUrl); let article = entry.target; // Extract metadata const author = article.querySelector('.author-section').textContent.replace('By', '').trim(); const section = article.querySelector('.section-info ').textContent.replace(' ', ' '); const title = article.querySelector('.article-title h1').textContent; // Parse URL for Chartbeat path format const parsedUrl = new URL(newUrl, window.location.origin); const cleanUrl = parsedUrl.host + parsedUrl.pathname; // Update Chartbeat configuration if (typeof window._sf_async_config !== 'undefined') { window._sf_async_config.path = cleanUrl; window._sf_async_config.sections = section; window._sf_async_config.authors = author; } // Track virtual page view with Chartbeat if (typeof pSUPERFLY !== 'undefined' && typeof pSUPERFLY.virtualPage === 'function') { try { pSUPERFLY.virtualPage({ path: cleanUrl, title: title, sections: section, authors: author }); } catch (error) { console.error('ping error', error); } } // Optional: Update document title if (title && title !== document.title) { document.title = title; } } } }); }, { threshold: 0.1 } ); function showArticleBody(button) { const article = button.closest("article"); const summary = article.querySelector(".article-body-summary"); const body = article.querySelector(".article-body-preview"); const readMoreSection = article.querySelector(".read-more-background"); // Hide summary and read-more section summary.style.display = "none"; readMoreSection.style.display = "none"; // Show the full article body body.classList.remove("hidden"); } document.addEventListener("DOMContentLoaded", () => { let loadCount = 0; // Track how many times articles are loaded const offset = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; // Offset values const currentUrl = window.location.pathname.substring(1); let isLoading = false; // Prevent multiple calls if (!currentUrl) { console.log("Current URL is invalid."); return; } const sentinel = document.getElementById("load-more-sentinel"); if (!sentinel) { console.log("Sentinel element not found."); return; } function isSentinelVisible() { const rect = sentinel.getBoundingClientRect(); return ( rect.top < window.innerHeight && rect.bottom >= 0 ); } function onScroll() { if (isLoading) return; if (isSentinelVisible()) { if (loadCount >= offset.length) { console.log("Maximum load attempts reached."); window.removeEventListener("scroll", onScroll); return; } isLoading = true; const currentOffset = offset[loadCount]; window.loadMoreItems().then(() => { let article = document.querySelector('#widget_1690 > div:nth-last-of-type(2) article'); intersectionObserver.observe(article) loadCount++; }).catch(error => { console.error("Error loading more items:", error); }).finally(() => { isLoading = false; }); } } window.addEventListener("scroll", onScroll); });

Sign up by email to receive news.