ADVERTISEMENT

Croffles, crisp and freshly made

Sabah-born Chunk & Dunk brings its signature croffles to the Philippines, starting with a preview that shows how each piece is made

Published Mar 20, 2026 05:32 pm  |  Updated Mar 20, 2026 05:31 pm
A new croffle brand from Malaysia is making its way to Metro Manila. Chunk & Dunk, a Sabah-based dessert concept known for its crisp, buttery croissant-waffle hybrids, is set to open its first international branch on April 5, 2026, at Eastwood City in Quezon City.
Ahead of its opening, the brand held a media preview, offering a first look at its menu and process. Plates of croffles circulated around the room, still warm, while a small pop-up station demonstrated how each piece is made, pressed, flipped, and finished fresh on the griddle.
There is something about a croffle done right that is hard to ignore. Crisp on the outside, soft and buttery within, it is a pastry that invites repetition. One piece is rarely enough.
Chunk & Dunk is a young brand, founded only in 2024 in Sabah, Malaysia by Adam Shamil. What began as a personal gamble, investing his life savings into a dessert concept, has quickly grown into something with a following. The focus is straightforward: take the croissant-waffle hybrid and refine it into a signature product that balances texture and flavor.

Adam spent months working through recipes, adjusting ratios and technique, until the croffle reached a point where it could stand on its own. The goal was not just novelty, but consistency, something that could hold its crunch while delivering the richness expected from laminated dough.
The brand’s entry into the Philippines came about in a way that feels almost incidental. During a trip to Kota Kinabalu, what began as a visit for an archery tournament turned into something else entirely. A Filipino family, drawn by the long queue at one of the stalls, tried the croffles and saw potential beyond the moment. That encounter would eventually lead to the idea of bringing Chunk & Dunk to a new audience.
At the preview, that origin story felt secondary to the experience itself. What mattered was what was on the plate. The lineup ranged from classic to more indulgent options, including Belgian chocolate, pistachio, hazelnut, matcha, and Biscoff. There were also savory variations, such as spicy chicken floss and its original counterpart, adding a different dimension to what is often seen as a sweet-forward category.
For the local market, the inclusion of ube macapuno stands out. It is a familiar flavor profile, but one that fits naturally into the format, adding a distinctly Filipino note to a product that originated elsewhere.
For those unfamiliar with the brand, a quick guide helps. The croffles range from simple, such as the original, to more layered options with toppings like milk chocolate, caramel, matcha, pistachio, and Biscoff. The savory side, particularly the chicken floss variants, offers a contrast to the usual sweetness, giving diners a broader range to choose from depending on mood.
To support its Philippine debut, the brand has set up a central kitchen to ensure consistency with its Malaysian outlets. The space also carries Chunk & Dunk’s distinct visual identity, marked by a vibrant, retro-inspired aesthetic that complements its playful menu.
Watching the croffles being made on-site, it became clear why the brand has gained traction. There is no excess in the process, just careful execution and attention to detail. The appeal lies in that balance, something crisp, something soft, something rich, all in one bite.
If the preview is any indication, Chunk & Dunk’s move into the Philippines is not just about introducing another dessert trend. It is about offering something simple, done well, and served fresh, the kind of thing people return to without much thought, except perhaps to order one more piece.
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.