ICU Message Format Playground
Test ICU message syntax with live preview, multi-locale output, and instant error explanations.
Free i18n Tool
ICU Message
Edit your message using ICU syntax below
Valid ICU message
Variables
Adjust values to see live output changes
Multi-locale Preview
Live output across 4 locales using Intl.PluralRules
Code Snippet
import { useIntl } from "react-intl";
// In your messages file:
// { "myKey": "Hello, {name}!" }
function MyComponent() {
const intl = useIntl();
return (
<span>
{intl.formatMessage(
{ id: "myKey" },
{
name: "World"
}
)}
</span>
);
}FAQ
Frequently asked questions
More tools
More free i18n tools
Free tools for the rest of your i18n workflow: locale data, ICU messages, file formats and hreflang.
Locale Explorer
Browse 250+ locales with Intl API examples, plural rules, and framework configs
File Converter
Convert between JSON, PO, XLIFF, ARB, YAML, CSV, Android XML, iOS Strings, and Properties
Cost Calculator
Estimate localization costs with side-by-side comparison of human, AI, and Better I18N pricing
Hreflang Generator
Generate and validate hreflang tags for multilingual SEO in HTML, XML sitemap, or HTTP headers