About this tool
Detect the language of any text with a confidence score, script detection, character statistics, and support for mixed-language input.
The Language Detector identifies what language a piece of text is written in by combining two signals: Unicode script detection across 19 script blocks (Latin, Cyrillic, Arabic, Devanagari, Chinese, Hangul, Tamil, Thai and more) and per-language character-frequency profiles that separate the 14 Latin-script languages it distinguishes. It returns up to five ranked candidates with a confidence score for each, a breakdown of which scripts appear and in what proportion, and character statistics — total characters, words, letters and unique characters. When more than one script is present it flags the text as possibly mixed-language rather than forcing a single answer.
Open Language Detector on AltFTool — it loads instantly in your browser.
Paste into the 'Text to analyze' box, or press Load sample to drop in the French sentence 'Bonjour, comment allez-vous aujourd'hui ?'
Detection reruns on every keystroke with no upload: each character is matched against 19 Unicode script blocks first, then Latin-script text is scored against 14 per-language character profiles.
Read Detection results — up to five ranked candidates, the top one flagged Best, each with a confidence percentage — alongside Detected scripts with each script's share and the Character statistics panel; Copy puts the ranked list on the clipboard.
You see the actual proportion of each Unicode script in the text, which is what tells you a paragraph is 80% Devanagari with Latin brand names mixed in.
Up to five languages come back with confidence scores, so a close call between Spanish and Portuguese is visible instead of hidden.
Text containing two or more scripts is flagged as mixed rather than collapsed into whichever script happens to have more characters.
Two passes. First, every character is matched against 19 Unicode script blocks, and a dominant non-Latin script maps straight to a language — Hangul to Korean, Thai to Thai, Hiragana or Katakana to Japanese. Second, Latin-script text is scored against character profiles for 14 languages, weighting distinctive letters like ñ, ß, ğ, ł and ă more heavily than shared ones.
The more the better — a full sentence is far more reliable than a couple of words. Frequency-based detection has little to work with in short strings, and a Latin-script phrase with no accented characters can score similarly across English, Dutch and Indonesian. Confidence scores reflect the relative fit of candidates, not a statistical certainty.
Not reliably, because those pairs share a script. Devanagari text is reported as Hindi, and Arabic-script text — including Urdu, which is written in the same Arabic script — is always reported as Arabic, since detection works at the script-block level and has no way to distinguish languages that share a writing system. Script-block classification is deterministic for the ranges this tool covers, but the inferred language is only a heuristic — especially for shared scripts.
No. Detection runs entirely in your browser using built-in script ranges and character profiles, with no API call, so pasting a private message or a customer email does not transmit it.