ADVERTISEMENT

ERC orders fix for spot market glitch to lower Visayas power rates

Published Aug 13, 2026 04:20 pm
The Energy Regulatory Commission (ERC) has directed immediate corrective measures to fix recurring spikes in line rental charges in the Wholesale Electricity Spot Market (WESM), moving to lower electricity costs for consumers in the Visayas affected by transmission constraints.
In a statement on Thursday, Aug. 13, ERC Chairperson Francis Saturnino Juan said the commission is set to resolve a technical glitch in the market's pricing model whenever high-voltage direct current interconnections connecting Luzon, Visayas, and Mindanao reach their capacity limits.
Juan said the action goes beyond an initial proposal by the Independent Electricity Market Operator of the Philippines to change the surplus formula, choosing instead to address the root cause of elevated power rates.
According to the ERC chief, the regulatory body uncovered that high line rental fees were not caused by the distribution formula itself, but by how the market's dispatch optimization model calculates electricity prices during grid congestion.
When grid lines hit full capacity, the system failed to log the bottleneck properly. Instead, it generated separate baseline System Marginal Prices across regions, masking the actual cost of moving power and distorting market settlements.
The ERC cited market data from July 26, 2026, where the SMP in Luzon and Visayas hit ₱6,551.52 per megawatt-hour compared with Mindanao’s ₱3,457.47 per MWh due to constraints on the Visayas-Mindanao HVDC link. On the same day, a separate interval showed Luzon and Visayas SMPs diverging widely at ₱6,544.95 per MWh and ₱14,485.78 per MWh, respectively.
This pricing flaw inflated line rental charges and misallocated net settlement surplus refunds to market participants unaffected by the congestion, rather than granting relief to Visayas consumers who bore the higher costs.
To address the issue, the regulator adopted a two-pronged solution designed to provide immediate rate relief while establishing long-term structural fixes, including a temporary freeze on line rental charges. Any resulting funding gaps will be billed directly to customers in the higher-priced region based on their usage. IEMOP has about 30 days to apply the rule.
The commission also mandated a revised pricing methodology to break down nodal prices into the SMP, cost of losses, and cost of congestion whenever cross-regional gaps occur. The move aims to capture the true cost of congestion without altering the existing pricing formula.
On the consumer and compliance side, IEMOP must upgrade its Market Dispatch Optimization Model and Central Registration and Settlement System to reflect the technical fixes. It is also required to engage an independent auditor to recalculate actual net settlement surplus and net settlement deficit allocations dating back to June 26, 2021.
Based on the audit outcomes, IEMOP will submit a proposed timeline and methodology to execute refunds or adjustments for affected market participants and consumers, which may be staggered across several billing cycles. The market operator is set to update its market manual and file a separate application with the ERC to recover costs associated with implementing the system enhancements. (Gabriell Christel Galang)

Related Tags

ERC Line rental Electricity bills Visayas
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; } }

{{ static_articles_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.