ADVERTISEMENT

Vivant profit slips on plant outage, rising costs despite revenue growth

Published May 14, 2026 09:47 am
Cebu-based energy and water conglomerate Vivant Corp. reported slight decline in first-quarter earnings as unplanned power plant outages and climbing operating expenses offset gains in electricity sales and the turnaround in its water division.
In a filing with the Philippine Stock Exchange on Thursday, May 14, thecompany reported consolidated core net income for the first three months of the year slipped two percent to ₱313 million.
Vivant’s net income attributable to parent equity holders also fell six percent year-on-year to ₱267 million.
The bottom line was weighed down by non-core items, including losses stemming from the maintenance-related downtime of a subsidiary’s generating unit, though these were partially mitigated by foreign exchange gains.
Despite the softer profit margins, Arlo G. Sarmiento, Vivant chief executive officer, struck an optimistic tone, noting that the firm remains on track to meet its midterm objectives.
Sarmiento cited the steady performance of the group’s distribution utility assets and the improving trajectory of its retail energy and water segments.
He added that the company is beginning to realize the value of previous investments, particularly in the Small Power Utilities Group (SPUG) and on-grid renewable energy projects.
Consolidated revenues for the period rose nine percent to ₱2.6 billion supported by higher power sales and finance income from Isla Mactan Cordova Corp. (IMCC) and the Puerto Princesa Wastewater Reclamation and Learning Center.
Electricity sales alone grew four percent, bolstered by more aggressive participation in the Wholesale Electricity Spot Market (WESM), increased volume from short-term supply contracts, and improved plant reliability in Bukidnon.
But expansion efforts came at a cost as operating expenses jumped 12 percent to ₱400 million. Vivant attributed the increase to larger headcount, professional fees linked to business development, and higher depreciation charges following fixed asset acquisitions in 2025.
The energy business remained the primary driver, contributing ₱476 million to the group’s net income. Energy distribution, led by Visayan Electric Co. (VECO), accounted for 56 percent of this total, or ₱267 million. While VECO’s electricity volumes grew four percent to 975 GWh, its income contribution fell six percent due to high base effect from specific service charge booked in the previous year. The power generation arm brought in ₱233 million, while the retail energy segment narrowed its losses to ₱23 million.
Vivant’s water business, on the other hand, emerged as a bright spot, posting an income contribution of ₱75 million, a reversal from the ₱12-million loss recorded in the same period last year, driven by IMCC’s desalination plant concession.
Looking ahead, Sarmiento said the group is deepening its footprint in the water sector through its new distribution venture, Bantayan Resource Management and Development Corp., while its retail energy arm, Corenergy, continues to secure new contestable market customers. (Gabriell Christel Galang)

Related Tags

Vivant Corp.
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.