Arabic diacritic remover

Paste vocalized Arabic and choose exactly what to remove: tanwin, harakat, shadda, sukun, the other combining marks, the superscript alef or the Quranic annotation signs. Only those marks are deleted; every letter, punctuation mark and digit stays as it is, and alef, ya and ta marbuta are never normalized. Use it to remove Arabic diacritics (tashkeel) completely, or only some of them, such as removing the harakat while keeping the shadda.

Loading the tool…

Processing and privacy: The result is calculated inside your browser and your data is not sent to any server.

How to use it

  1. Paste your vocalized Arabic into the input box, or press “Load example”.
  2. Tick the diacritic groups you want removed; each group shows how many marks were found and removed.
  3. Turn the “shadda” group off if you want to keep the shadda and drop the rest.
  4. Check the result, then copy it or download it as a text file.

Example

The built-in example has three fully vocalized lines: “بِسْمِ اللَّهِ الرَّحْمَٰنِ الرَّحِيمِ”, then “قَالَ: مَرْحَبًا بِكُمْ فِي مَتْجَرِنَا!”, then “السِّعْرُ 150 رِيَالًا — Arabic diacritics, ١٢٣”.

With the default groups (tanwin, harakat, shadda, sukun) 37 marks are removed: 2 tanwin, 25 harakat, 4 shadda and 6 sukun. The result is “بسم الله الرحمٰن الرحيم”, then “قال: مرحبا بكم في متجرنا!”, then “السعر 150 ريالا — Arabic diacritics, ١٢٣”.

Note that “الرحمٰن” keeps its superscript alef because that group is off by default; turn it on and it becomes “الرحمن” (38 marks removed). The colon, the exclamation mark, the dash, the digits 150 and ١٢٣ and the English words are all unchanged.

Limits and caveats

  • Tested with 100,000 lines (about 7 MB of fully vocalized text): the removal itself takes about 1.5 seconds, but the browser text box needs several seconds to display a paste of that size. Automatic processing therefore stops above about 4,000 lines or 150,000 characters and the “Remove diacritics” button takes over. The preview shows only the first 300 lines; copy and download use the full result. At that size the text box also shows every line in one direction, because working out a direction per line makes the browser very slow.
  • Only the code points listed on the panel are removed: U+064B to U+0652, U+0653 to U+065F, U+0670 and U+06D6 to U+06ED. The precomposed letters آ (U+0622), أ (U+0623), إ (U+0625), ؤ (U+0624) and ئ (U+0626) are single letters, not a letter plus a mark, so the tool never touches them.
  • No normalization happens here: alef forms, ya and alef maksura, ta marbuta and ha all stay exactly as you typed them. The tatweel (ـ U+0640) is not removed either; a separate tool does that.
  • The U+0653 to U+065F group contains maddah above, hamza above and hamza below. If a word was typed as a base letter plus a separate hamza mark (ا + U+0654 instead of the single letter أ), removing this group turns it back into “ا” and changes the spelling of the word. That is why the group is off by default.
  • The U+06D6 to U+06ED group contains three signs that are not vowel marks at all: U+06DD END OF AYAH (which encloses the verse number), U+06DE START OF RUB EL HIZB and U+06E9 PLACE OF SAJDAH. Removing them removes visible content, not just vocalization.

Questions about this tool

Why is the superscript alef off by default?

The superscript (dagger) alef U+0670 is not an optional vowel sign; it is part of the spelling of particular words in fully vocalized text: هَٰذَا, ٱللَّٰه, الرَّحْمَٰن, لَٰكِنْ. Removing it gives “هذا” and “الرحمن”, which is how those words look in unvocalized writing, but it changes Quranic and fully vocalized text. The tool leaves that decision to you.

Should I strip the diacritics from Quranic text?

It is not advisable. In a mushaf the marks are not decoration: they are part of the orthography, and U+06D6 to U+06ED mark pause positions, prostration points and verse numbers. Removing diacritics can change meaning in Arabic generally (عَلِمَ / عُلِمَ / عِلْم all become علم), and in Quranic text it alters the received spelling. Use this tool on your own text, for search, indexing and matching.

How is this different from the tatweel remover?

Diacritics are phonetic marks above and below letters. The tatweel (ـ U+0640) is a character that stretches the join between letters for purely visual reasons. The two tools are deliberately separate so neither removes something you did not ask for: this tool never touches the tatweel and only tells you how many it found.

How do I remove Arabic diacritics (tashkeel) from text?

Paste the vocalized text and the default groups remove the harakat, tanwin, shadda and sukun straight away; then copy or download the result. “مُحَمَّدٌ” becomes “محمد” with 5 marks removed: 3 harakat, 1 shadda and 1 tanwin. Letters, hamza forms, punctuation and digits are left as they are.

Can I remove the harakat but keep the shadda?

Yes. Turn the “Shadda” group off and leave the other groups on: the harakat, tanwin and sukun are removed and the shadda stays in place, so “مُحَمَّدٌ” becomes “محمّد”. The same way you can remove only the tanwin, or only the sukun, by leaving just that group on.