ADVERTISEMENT

Rainfall in parts of Luzon surpasses July average due to 'habagat', says PAGASA

Published Jul 24, 2025 03:19 pm
Residents wade through knee-deep to waist-deep floodwaters along Araneta Avenue in Quezon City on Monday, July 21, 2025, after intense rains brought by the southwest monsoon (habagat) submerged portions of the area. (Santi San Juan/Manila Bulletin)
Residents wade through knee-deep to waist-deep floodwaters along Araneta Avenue in Quezon City on Monday, July 21, 2025, after intense rains brought by the southwest monsoon (habagat) submerged portions of the area. (Santi San Juan/Manila Bulletin)
Several areas in Luzon have recorded rainfall amounts that exceeded their average total for the entire month of July due to the enhanced southwest monsoon, or “habagat,” the Philippine Atmospheric, Geophysical and Astronomical Services Administration (PAGASA) said on Thursday, July 24.
From July 18 to 23, Sangley Point in Cavite received 963.7 millimeters (mm) of rain, which is more than double its average monthly total of 456.5 mm.
Abucay in Bataan, a new PAGASA station without an established average yet, recorded the second-highest rainfall during this period with 916 mm.
Cubi Point in Subic Bay, Zambales received 886.8 mm, exceeding its average rainfall for July, which is 805.1 mm.
“The heavy rains were mostly caused by the southwest monsoon, which was further strengthened at times by tropical cyclones Crising, Dante, and Emong,” said PAGASA weather specialist Benison Estareja.
“Rainfall peaked around July 18 under Crising’s influence, then eased briefly before intensifying again from July 21 to 23 due to Dante and Emong,” he added.
Other stations that surpassed their July averages include:
* Science Garden, Quezon City – 679.7 mm (versus 516.6 mm)
* Dagupan City, Pangasinan – 647.9 mm (versus 532.7 mm)
* NAIA, Pasay City – 612.5 mm (versus 158.7 mm)
* Ambulong, Batangas – 537.9 mm (versus 338.3 mm)
* Tanay, Rizal – 519.4 mm (versus 450.9 mm)
PAGASA assistant weather services chief Chris Perez noted that significant rainfall from the habagat was mostly recorded in western Luzon, including Metro Manila.
“We have experienced continuous rains over the past few days, and more rain showers are expected. Many areas in western Luzon, including Metro Manila, have already received heavy rainfall. Because of this, the threat of flooding persists. Water levels in rivers are receding slowly, and communities along riverbanks remain at risk, especially if more rains cause the rivers to overflow again,” Perez said.
“Landslides are also a concern, as prolonged rains have softened the soil in mountainous areas. With more rain forecast for the next three days, the risk of landslides persists,” he added.
PAGASA also said the tropical depression located 2,080 kilometers east of southeastern Luzon is not expected to enter the Philippine Area of Responsibility, but it may continue to enhance the habagat and bring rain showers over some areas until early next week.

Related Tags

PAGASA RAINFALL EXCEEDED RECORDS HABAGAT EMONG CRISING
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.