How to Calculate Zakat

Zakat Calculator

Calculate your annual Zakat (2.5%) based on your assets and liabilities.

Zakat is only due if your total net assets exceed this threshold.

Total Zakatable Assets:
Net Wealth:
Total Zakat Due:

How to Calculate Zakat: A Step-by-Step Guide

Zakat is one of the Five Pillars of Islam, a mandatory form of almsgiving for every adult Muslim who meets the specific wealth criteria. Calculating your Zakat ensures you fulfill your spiritual obligation and support those in need within the community.

1. Determine Your Zakatable Assets

You must calculate the value of all assets held for a full lunar year. These include:

  • Cash: All money in your bank accounts, digital wallets, and physical cash at home.
  • Gold and Silver: The market value of gold and silver jewelry or coins (check current market rates per gram).
  • Investments: The current value of stocks, shares, and retirement funds (like 401k or pension) that are accessible.
  • Business Wealth: The value of trade goods, inventory, and business cash.
  • Money Owed: Money you have loaned to others that you are confident will be repaid.

2. Subtract Your Liabilities

Before calculating the final percentage, subtract your immediate debts. This includes outstanding bills, credit card balances due now, and the current month's rent or mortgage payment. Long-term debt like the total remaining balance of a 30-year mortgage is generally not subtracted, only the immediate payment due.

3. Compare to the Nisab

The Nisab is the minimum amount of wealth a person must possess before they are obligated to pay Zakat. It is based on the price of gold (87.48g) or silver (612.36g). If your net wealth (Assets minus Liabilities) is less than the Nisab, you are not required to pay Zakat for that year.

4. The 2.5% Calculation

If your net wealth exceeds the Nisab, you pay 2.5% (or 1/40th) of that total amount. This is calculated annually once your wealth has been held for one full lunar year (Hawl).

Example Calculation

Imagine you have the following:

  • Cash and Bank: 10,000
  • Gold Value: 2,000
  • Debts: 1,000
  • Net Wealth: 11,000
  • If Nisab is 5,000: Your net wealth (11,000) is above Nisab.
  • Zakat Due: 11,000 x 0.025 = 275
function calculateZakatResult() { var cash = parseFloat(document.getElementById('cashAssets').value) || 0; var gold = parseFloat(document.getElementById('goldAssets').value) || 0; var investments = parseFloat(document.getElementById('investmentAssets').value) || 0; var receivables = parseFloat(document.getElementById('receivableAssets').value) || 0; var business = parseFloat(document.getElementById('businessAssets').value) || 0; var liabilities = parseFloat(document.getElementById('totalLiabilities').value) || 0; var nisab = parseFloat(document.getElementById('nisabThreshold').value) || 0; var totalAssets = cash + gold + investments + receivables + business; var netWealth = totalAssets – liabilities; var zakatDue = 0; var resultArea = document.getElementById('zakatResultArea'); var statusH3 = document.getElementById('resultStatus'); var totalAssetsDisplay = document.getElementById('totalAssetsDisplay'); var netWealthDisplay = document.getElementById('netWealthDisplay'); var zakatAmountDisplay = document.getElementById('zakatAmountDisplay'); resultArea.style.display = 'block'; totalAssetsDisplay.innerText = totalAssets.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}); netWealthDisplay.innerText = netWealth.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}); if (netWealth >= nisab && netWealth > 0) { zakatDue = netWealth * 0.025; resultArea.style.backgroundColor = '#f0f7f4'; resultArea.style.border = '1px solid #27ae60'; statusH3.innerText = 'Zakat is Applicable'; statusH3.style.color = '#27ae60'; zakatAmountDisplay.innerText = zakatDue.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}); } else { resultArea.style.backgroundColor = '#fff5f5'; resultArea.style.border = '1px solid #e74c3c'; statusH3.innerText = 'Net Wealth is Below Nisab'; statusH3.style.color = '#e74c3c'; zakatAmountDisplay.innerText = '0.00'; } }

Leave a Comment