Education
Article

The Developer's Guide to Abjad Numerals (Hisab al-Jummal)

Abdulaziz Yahya· ·6 min read

What is Hisab al-Jummal?

Hisab al-Jummal (حساب الجُمَّل) is a system of assigning numerical values to the 28 letters of the Arabic alphabet. It’s one of the oldest numeral systems still in active use, dating back to at least the 8th century.

The system is used in:

  • Islamic scholarship — encoding dates in phrases, verse numbering
  • Chronograms — hiding dates in poetry or inscriptions
  • Numerology — calculating the “value” of names and phrases
  • Calligraphy — decorative number representation

The Abjad Values

The 28 Arabic letters map to values following the ancient Abjad order (not the modern alphabetical order):

LetterNameValueLetterNameValue
اAlif1طṬāʾ9
بBāʾ2يYāʾ10
جJīm3كKāf20
دDāl4لLām30
هHāʾ5مMīm40
وWāw6نNūn50
زZayn7سSīn60
حḤāʾ8عʿAyn70
طṬāʾ9فFāʾ80
صṢād90
قQāf100
رRāʾ200
شShīn300
تTāʾ400
ثThāʾ500
خKhāʾ600
ذDhāl700
ضḌād800
ظẒāʾ900
غGhayn1000

Implementation in Python

ABJAD = {
    'ا': 1, 'ب': 2, 'ج': 3, 'د': 4, 'ه': 5,
    'و': 6, 'ز': 7, 'ح': 8, 'ط': 9, 'ي': 10,
    'ك': 20, 'ل': 30, 'م': 40, 'ن': 50, 'س': 60,
    'ع': 70, 'ف': 80, 'ص': 90, 'ق': 100, 'ر': 200,
    'ش': 300, 'ت': 400, 'ث': 500, 'خ': 600, 'ذ': 700,
    'ض': 800, 'ظ': 900, 'غ': 1000,
    # Variants
    'أ': 1, 'إ': 1, 'آ': 1, 'ة': 5, 'ى': 10,
    'ئ': 10, 'ؤ': 6,
}

def jummal(text: str) -> int:
    """Calculate the Jummal value of Arabic text."""
    return sum(ABJAD.get(c, 0) for c in text)

# Example
print(jummal('بسم الله'))  # 168
print(jummal('محمد'))       # 92

Implementation in Dart/Flutter

const Map<String, int> abjad = {
  'ا': 1, 'ب': 2, 'ج': 3, 'د': 4, 'ه': 5,
  'و': 6, 'ز': 7, 'ح': 8, 'ط': 9, 'ي': 10,
  'ك': 20, 'ل': 30, 'م': 40, 'ن': 50, 'س': 60,
  'ع': 70, 'ف': 80, 'ص': 90, 'ق': 100, 'ر': 200,
  'ش': 300, 'ت': 400, 'ث': 500, 'خ': 600, 'ذ': 700,
  'ض': 800, 'ظ': 900, 'غ': 1000,
  // Variants
  'أ': 1, 'إ': 1, 'آ': 1, 'ة': 5, 'ى': 10,
};

int jummalValue(String text) {
  return text.runes
      .map((r) => String.fromCharCode(r))
      .map((c) => abjad[c] ?? 0)
      .fold(0, (a, b) => a + b);
}

Real-World Application: Jummal Calculator App

We built the Jummal Calculator app to make Hisab al-Jummal accessible to everyone — scholars, students, calligraphers, and anyone curious about the numeric values hidden in Arabic text.

The app features:

  • Instant calculation as you type
  • Word-by-word breakdown showing each letter’s value
  • Comparison mode to check if two phrases have equal values
  • History of previous calculations
  • Share results as beautiful cards

Download it free on Google Play.

The Beauty of Chronograms

One of the most elegant uses of Abjad numerals is the chronogram (تاريخ شعري) — a phrase whose letter values sum to a meaningful date. Islamic scholars and poets would compose phrases where the Jummal value encodes the year of an event.

For example, a poet commemorating an event in 1200 AH might compose a phrase whose letters sum to exactly 1200.

Conclusion

Hisab al-Jummal is more than a numbering system — it’s a bridge between mathematics and language, between computation and culture. Understanding it enriches your appreciation of Arabic calligraphy, Islamic manuscripts, and the deep mathematical tradition in Arabic scholarship.


Try it yourself with the Jummal Calculator app by AzizWares.

Tags Abjad Jummal Arabic Mathematics Islamic Numerals History