🇸🇦

Saudi Arabia Number Format

CLDR Locale:
ISO: SA / SAURegion: AsiaDigits: eastern arabic

Try It — Live Preview

Number
١٬٢٣٤٬٥٦٧٫٨٩
Currency (SAR)
‏١٬٢٣٤٬٥٦٧٫٨٩ ر.س.‏
Percentage
١٬٢٣٤٬٥٦٨٪؜
Compact
١٫٢ مليون

Format Rules

Decimal Separator
٫٫
Thousands Separator
٬Arabic thousands separator (٬)
Grouping Pattern
3
Negative Format
؜-١٬٢٣٤٬٥٦٧٫٨٩
Currency Symbol
(SAR)
Currency Position
After number with space ١٬٢٣٤٬٥٦٧٫٨٩ ﷼
Percent Position
Before number ١٣٪؜
Zero
٠٫٠٠
Compact
١٫٢ مليون

Saudi Arabia formatting implementation notes

For Saudi Arabia, format numbers with the explicit locale ar-SA; the reference value 1234567.89 renders as ١٬٢٣٤٬٥٦٧٫٨٩.

Saudi Arabia's reference format uses "٫" as the decimal mark and Arabic thousands separator (٬) ("٬") for grouping. The integer uses repeating groups of three digits. Pass "ar-SA" directly to Intl.NumberFormat instead of replacing punctuation in a preformatted string.

SAR is shown with ﷼ after the amount with a separating space; the same reference value renders as ١٬٢٣٤٬٥٦٧٫٨٩ ﷼. The percent sign appears immediately before the amount. Use the ISO currency code for storage and interchange because a visible symbol can be shared by unrelated currencies.

Eastern Arabic-Indic digits are the page's reference digit system, and the negative pattern is -n. Treat ar-SA as the reference locale for this page, but still respect the user's explicitly selected language and numbering-system preferences. Validate output with formatToParts() when spacing, signs, or bidirectional literals affect the interface.

  • Locale: ar-SA
  • Decimal and grouping: ١٬٢٣٤٬٥٦٧٫٨٩
  • Currency: SAR → ١٬٢٣٤٬٥٦٧٫٨٩ ﷼
  • Digits: Eastern Arabic-Indic digits

Reviewed 19 July 2026. Sources: Unicode locale number formats · Intl.NumberFormat reference

Code Examples

// Basic number
new Intl.NumberFormat('ar-SA').format(1234567.89)
// → "١٬٢٣٤٬٥٦٧٫٨٩"

// Currency
new Intl.NumberFormat('ar-SA', {
  style: 'currency',
  currency: 'SAR'
}).format(1234567.89)
// → "١٬٢٣٤٬٥٦٧٫٨٩ ﷼"

// Percentage
new Intl.NumberFormat('ar-SA', {
  style: 'percent',
  minimumFractionDigits: 1
}).format(0.125)

// Compact notation
new Intl.NumberFormat('ar-SA', {
  notation: 'compact'
}).format(1234567)

Negative Number Formats

Standard؜-١٬٢٣٤٬٥٦٧٫٨٩
new Intl.NumberFormat('ar-SA').format(-1234567.89)
Accounting style؜-‏١٬٢٣٤٬٥٦٧٫٨٩ ر.س.‏
new Intl.NumberFormat('ar-SA', { style: 'currency', currency: 'SAR', currencySign: 'accounting' }).format(-1234567.89)

Edge Cases & Notes

Eastern Arabic-Indic numerals (٠١٢٣٤٥٦٧٨٩) by default. Use numberingSystem:'latn' for Western. Percent symbol (٪) comes before in Arabic.