Attributes

Halal

13 Brands

Marks brands whose products are halal, at one of two levels: certified, where a named halal authority lists the brand on its public register, or stated, where the brand itself says its products are halal. For importers and distributors serving markets where halal status decides shelf access.

Explore Brands by Location

Interactive map showing brand locations across emerging markets. View regional clusters.

Use arrow keys to pan, plus and minus to zoom. Click markers to view brand details.

© OpenStreetMap contributors · © CARTO

Resilient Brands

Tubetey
Resilient Brand

Tubetey

Tubetey had 17 points, franchises included, in 2018 and six a year later. It rebuilt in Kazan with about ten investor partners as co-owners.

Kazan, Tatarstan 🇷🇺
Founded 2015
Founder: Sultan Safin
Founder-Controlled · Vertically Integrated
BOH Tea
Resilient Brand

BOH Tea

By Tristan Russell's account, BOH's distributor feared in 1960 that the estate's European buyers would go. In time BOH turned to home buyers.

Cameron Highlands, Pahang 🇲🇾
Founded 1929
Family-Owned · Vertically Integrated
Oriental Kopi
Resilient Brand

Oriental Kopi

A Chinese-tradition kopitiam pursued halal certification as deliberate Malay-market strategy, not compliance — timed into a boycott wave.

Johor Bahru, Johor 🇲🇾
Founded 2020
Founder-Controlled · Vertically Integrated
Wardah
Resilient Brand

Wardah

A 1990 factory fire nearly bankrupted a home cosmetics business. It rebuilt in two days — and became Indonesia's largest beauty company.

Jakarta 🇮🇩
Founded 1985
Founder-Controlled · Vertically Integrated
Love a Loaf Bakery & Cafe
Resilient Brand

Love a Loaf Bakery & Cafe

A French-inspired café won factory and hospital canteens by presenting itself as halal — a position no pork-serving rival can take.

Bayan Baru, Penang 🇲🇾
Founded 2014
Founder-Controlled · Vertically Integrated
Marrybrown
Resilient Brand

Marrybrown

Rejected by banks and dismissed by rivals — Marrybrown took its halal menu to 16 countries on the moves KFC and McDonald's could not copy.

Johor Bahru, Johor 🇲🇾
Founded 1981
Founder-Controlled · Retail Operator
SBK Coffee
Resilient Brand

SBK Coffee

Rejected by 700 of its 800 wholesale buyers, Penang's oldest coffee factory opened its own stores — and invented Nitro Nanyang cold brew.

George Town, Penang 🇲🇾
Founded 1944
Founder: Jonathan Chan
Family-Owned · Vertically Integrated
Secret Recipe
Resilient Brand

Secret Recipe

A restaurant chain built around cakes, a halal crisis that shut 297 outlets, and a 56-day sprint that turned compliance into a B2B supply channel.

Petaling Jaya, Selangor 🇲🇾
Founded 1997
Founder: Steven Sim
Founder-Controlled · Retail Operator
Benns Ethicoa
Resilient Brand

Benns Ethicoa

Malaysian cacao crashed 99.9%. This company pays farmers 3x market rates and won the country's first international chocolate awards.

Cheras, Kuala Lumpur 🇲🇾
Founded 1973
Founder: Ng Tuck Ming
Family-Owned · Vertically Integrated
Applecrumby
Resilient Brand

Applecrumby

Nine years between funding rounds—surviving on margins while competitors burned cash. Now holds the world's first TCF diaper patent.

Petaling Jaya, Selangor 🇲🇾
Founded 2012
Founder-Controlled · Manufacturer
Ghee Hiang
Resilient Brand

Ghee Hiang

Founded 1856. Seven years in court. Four families nearly destroyed Malaysia's oldest confectionery. Sesame oil—not pastries—now 70% of revenue.

George Town, Penang 🇲🇾
Founded 1856
Family-Owned · Vertically Integrated

Profiled Brands

Barkath Group

Barkath Group

By the chairman's account, a duty of more than 30% made a Penang shop's import trade hard, so the family asked to make the brands it sold itself.

George Town, Penang 🇲🇾
Family-Owned · Manufacturer
Irama Dining Group

Irama Dining Group

A former construction engineer opened 3 restaurants during a pandemic that closed hundreds. Now Penang's halal fine dining scene belongs to him.

George Town, Penang 🇲🇾
Founded 2015
Founder-Controlled · Retail Operator
website: feature.properties.website || '', tier: feature.properties.arcStatus || 'basic' })); this.loading = false; // Update hero brand count const heroCount = document.getElementById('hero-brand-count'); if (heroCount) { const brandWord = this.brands.length === 1 ? 'brand' : 'Brands'; heroCount.innerHTML = this.brands.length + ' ' + brandWord; } console.log('Loaded ' + this.brands.length + ' brands for ' + taxonomyType + ': ' + termSlug); } catch (error) { console.error('Error loading brand data:', error); this.brands = []; this.loading = false; } // Initialize filters from URL parameters const params = new URLSearchParams(window.location.search); if (params.has('search')) this.search = params.get('search'); if (params.has('country')) this.country = params.get('country'); if (params.has('tier')) this.brandTier = params.get('tier'); if (params.has('website')) this.hasWebsite = params.get('website') === 'true'; // Watch for filter changes and update URL (debounced for search) let searchTimeout; this.$watch('search', () => { clearTimeout(searchTimeout); searchTimeout = setTimeout(() => this.updateURL(), 300); }); this.$watch('country', () => this.updateURL()); this.$watch('brandTier', () => this.updateURL()); this.$watch('hasWebsite', () => this.updateURL()); }, updateURL() { const params = new URLSearchParams(); if (this.search) params.set('search', this.search); if (this.country) params.set('country', this.country); if (this.brandTier) params.set('tier', this.brandTier); if (this.hasWebsite) params.set('website', 'true'); const newURL = params.toString() ? window.location.pathname + '?' + params.toString() : window.location.pathname; window.history.pushState({}, '', newURL); }, get activeFilterCount() { let count = 0; if (this.search) count++; if (this.country) count++; if (this.brandTier) count++; if (this.hasWebsite) count++; return count; }, get filteredBrands() { return this.brands.filter(brand => { const matchesSearch = !this.search || brand.name.toLowerCase().includes(this.search.toLowerCase()); const matchesCountry = !this.country || brand.countryCode === this.country; const matchesTier = !this.brandTier || brand.tier === this.brandTier; const matchesWebsite = !this.hasWebsite || brand.website; return matchesSearch && matchesCountry && matchesTier && matchesWebsite; }); }, get sortedBrands() { return [...this.filteredBrands].sort((a, b) => { let aVal, bVal; if (this.sortBy === 'founded') { aVal = a.founded || 0; bVal = b.founded || 0; } else if (this.sortBy === 'tier') { const tierOrder = { 'complete': 3, 'partial': 2, 'basic': 1 }; aVal = tierOrder[a.tier] || 0; bVal = tierOrder[b.tier] || 0; } else if (this.sortBy === 'country') { aVal = a.country || ''; bVal = b.country || ''; } else if (this.sortBy === 'city') { aVal = a.city || ''; bVal = b.city || ''; } else { aVal = a.name || ''; bVal = b.name || ''; } if (this.sortDirection === 'asc') { return aVal > bVal ? 1 : aVal < bVal ? -1 : 0; } else { return aVal < bVal ? 1 : aVal > bVal ? -1 : 0; } }); }, get visibleCount() { return this.filteredBrands.length; }, get uniqueCountries() { return [...new Set(this.brands.map(b => b.countryCode).filter(c => c))].sort(); }, getCountryName(code) { const countryNames = { 'ru': 'Russia', 'cn': 'China', 'mn': 'Mongolia', 'et': 'Ethiopia', 'in': 'India' }; return countryNames[code] || code.toUpperCase(); }, clearAllFilters() { this.search = ''; this.country = ''; this.brandTier = ''; this.hasWebsite = false; }, removeFilter(filterName) { if (filterName === 'search') this.search = ''; else if (filterName === 'country') this.country = ''; else if (filterName === 'tier') this.brandTier = ''; else if (filterName === 'website') this.hasWebsite = false; }, sortTable(column) { if (this.sortBy === column) { this.sortDirection = this.sortDirection === 'asc' ? 'desc' : 'asc'; } else { this.sortBy = column; this.sortDirection = (column === 'founded') ? 'desc' : 'asc'; } }, downloadCSV() { const headers = ['Brand', 'City', 'Country', 'Founded', 'Website', 'Tier']; let csv = headers.join(',') + '\n'; this.sortedBrands.forEach(brand => { const rowData = [ this.escapeCSV(brand.name), this.escapeCSV(brand.city || '—'), this.escapeCSV(brand.country || '—'), this.escapeCSV(brand.founded ? String(brand.founded) : '—'), this.escapeCSV(brand.website || '—'), this.escapeCSV(brand.tier) ]; csv += rowData.join(',') + '\n'; }); const blob = new Blob([csv], { type: 'text/csv;charset=utf-8;' }); const link = document.createElement('a'); const url = URL.createObjectURL(blob); const today = new Date().toISOString().split('T')[0]; let filename = 'halal-directory-' + today; if (this.activeFilterCount > 0) { filename += '-filtered'; } filename += '.csv'; link.setAttribute('href', url); link.setAttribute('download', filename); link.style.visibility = 'hidden'; document.body.appendChild(link); link.click(); document.body.removeChild(link); }, escapeCSV(str) { if (!str) return ''; const comma = String.fromCharCode(44); const quote = String.fromCharCode(34); const newline = String.fromCharCode(10); if (str.includes(comma) || str.includes(quote) || str.includes(newline)) { return quote + str.replace(new RegExp(quote, 'g'), quote + quote) + quote; } return str; } }" class="directory-table-container">
Brand City Country Year WebsiteTier
End of Directory Listing (Hub-only feature) */}}