ADVERTISEMENT

Villafuerte bats for swift passage of bill lifting data caps

Published Nov 24, 2025 02:34 pm

At A Glance

  • Camarines Sur 5th district Rep. Migz Villafuerte is making an aggressive push for the passage of a measure that would allow prepaid and postpaid subscribers of Internet Service Providers (ISPs) to use or carry over their remaining or unused data to the next billing cycle, or until such credits are fully consumed.
(Unsplash)
(Unsplash)


Camarines Sur 5th district Rep. Migz Villafuerte is making an aggressive push for the passage of a measure that would allow prepaid and postpaid subscribers of Internet Service Providers (ISPs) to use or carry over their remaining or unused data to the next billing cycle, or until such credits are fully consumed.
“We in the House Committee on Information and Communications Technology (ICT) are hoping for the judicious action by the Congress on a bill requiring all ISPs to adopt a roll-over data allocation system lifting the expiration periods on loads,” Villafuerte said over the weekend.
“This is to allow both the prepaid and postpaid subscribers of ISPs to carry over or still use their remaining or unused data to the next billing cycle or until their loads are fully consumed,” added Villafuerte, chairman of the committee in the current 20th Congress.
The information and communications technology panel recently approved the consolidated bill on the proposed “Roll-Over Data Act". This is embodied in Committee Report (CR) No. 9, which covered House Bill (HB) Nos. 87, 650, and 708
Villafuerte noted that CR No.9 “was unanimously approved, subject to style, during the organizational meeting of the ICT panel".
“Once this bill becomes a law, both the prepaid and postpaid subscribers of all ISPs will be able to use the remaining data or loads of their mobile data packages even after such expire in one or several days or in a month, depending on their respective subscription plans,” the Bicolano said, referring to data capping.
“Data capping” refers to the bandwidth allocation limits that ISPs offer to their respective subscribers for a given period.
“This means goodbye to the currently unfair, anti-consumer practice of ISPs to have their subscribers, whether with prepaid or postpaid data packages, forfeit their unused data when their particular subscriptions end after a day, three days, a week, 15 days or one month,” added Villafuerte.
A similar bill requiring ISPs to adopt a roll-over data scheme was passed by the House of Representatives in the 18th Congress. However, the Senate was not able to act on a counterpart bill.
The consolidated bill makes it a State policy “to implement measures regulating Internet services provided by ISPs with the goal of ensuring that the interest and welfare of consumers are protected and upheld", Villafuerte said.
He says the consolidated bill seeks to guarantee that Internet service end-users or subscribers are able to enjoy the full value of the data allocation that they pay for.
The bill also aims to assure consumers that their unused data allotments shall not be lost, and shall rather be carried over to succeeding months, and can be converted by yearend into rebates that they may also avail of and use.
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.