Templates in your clients’ languages: what Meta supports, and what it does not

Meta needs one template per language and translates nothing. Which African language codes exist, which do not, and how a brokerage builds a library.

By FCB.ai, ORIS editorial teamPublished on 8 min read
Contents
  1. Plain language is a conduct requirement, not a style preference
  2. How Meta actually handles template languages
  3. Which languages you can actually use
  4. A build order that does not waste six weeks
  5. Where the software has to meet you
  6. Frequently asked questions

A brokerage in KwaZulu-Natal sends its premium reminders in English because that is how the template was approved. A meaningful share of the book speaks isiZulu at home. Nobody has complained, the reminders mostly work, and the question of language has never reached a management meeting. It should, for two unrelated reasons: the conduct standard your firm is held to says communication must be understood, and Meta's template mechanics make language a structural decision that is awkward to reverse once a library has grown.

This is the practical version — what the platform actually allows, which languages have codes, and the build order that avoids translating twenty-four templates nobody needed in a second language.

Plain language is a conduct requirement, not a style preference

Section 3(1)(a) of the FAIS General Code of Conduct requires that representations made and information provided to a client must be factually correct and "provided in plain language, avoid uncertainty or confusion and not be misleading". Since June 2020 the Code also defines plain language: communication that is clear and easy to understand, avoids uncertainty or confusion, and is "adequate and appropriate in the circumstances, taking into account the factually established or reasonably assumed level of knowledge of the person or average persons at whom the communication is targeted". Section 14(6) adds that advertisements must use plain language and that terms must be defined or explained where the average targeted client could not reasonably be expected to understand them.

Read the definition carefully and it is relative, not absolute. The test is the assumed knowledge of the people you are writing to. A renewal notice in dense English to a book whose first language is isiZulu, Sesotho or Afrikaans is harder to defend under that test than the same notice in the client's language — particularly when the message asks the client to act by a date or accept a change. It does not follow that everything must be translated. It does follow that the choice should be deliberate and recorded, starting with the messages that carry a deadline or a consequence.

How Meta actually handles template languages

Four mechanics matter, and all four surprise people the first time.

  1. One template per language. A language code is assigned at creation and cannot be mixed inside a template. Multiple templates may share a name with different languages, but each one counts separately against your template limit — so a library of twenty templates in three languages is sixty template assets, not twenty.
  2. Meta does not translate anything. The documentation is explicit that template strings and variables are not translated by Meta and that you are responsible for supplying strings and example parameters in the appropriate language.
  3. Each language version is reviewed on its own. A version starts as pending and is assessed independently. Approval of the English version tells you nothing about the isiZulu one.
  4. The language is chosen at send time. The code travels in the send payload, so your system has to know which language to pick for this client, for this message — which means storing a language preference against the customer record rather than guessing from a surname or a province.

Two consequences follow. Translating a template is a submission, an approval wait and an ongoing maintenance burden, so a library should be curated rather than mirrored. And because variables are passed through untouched, a sentence whose meaning depends on English word order will break when the surrounding words change: write each language version as a message in its own right, not as a slot-filling exercise around the same variables.

Which languages you can actually use

Meta publishes a closed list of supported template language codes. For a brokerage operating across Southern, East and West Africa, these are the ones that exist:

LanguageCodeWhere it earns its place
English (ZAF)en_ZADefault for a South African book; more appropriate than en_GB or en_US
AfrikaansafWestern and Northern Cape, large parts of Namibia
ZuluzuKwaZulu-Natal and Gauteng personal lines and funeral books
SwahiliswKenya, Tanzania, Uganda, eastern DRC
English (UGA), English (GHA)en_UG, en_GHLocal English variants where the register differs from UK English
HausahaNorthern Nigeria, Niger
Kinyarwandarw_RWRwanda
Portuguesept_PT, pt_BRMozambique and Angola
Frenchfr, fr_CIV, fr_MAFrancophone West and North Africa
Arabicar, ar_MA, ar_EGNorth Africa

Now the part that gets left out of vendor pitches. isiXhosa, Sesotho, Yoruba, Igbo and Shona have no code on that list. You cannot create a template in them, and no amount of asking a provider changes it, because the list is Meta's. For a brokerage with a large Eastern Cape or Free State book, that is a real constraint and it needs an honest answer rather than a workaround dressed up as a feature.

There are two legitimate responses. The first: the language code is a property of templates only. Replies inside an open customer service window are free-form text, so a representative can and should answer in the client's language there — the constraint applies to the message that opens the conversation, not the conversation. The second: design the opening template to be short, plain and in a supported language, with the explicit invitation to reply in the client's own language. That is a better outcome than a template submitted under a mismatched language code, which risks rejection at review and leaves you with a library nobody can reason about.

A build order that does not waste six weeks

Do not translate the library. Translate the traffic.

  1. Count first. Pull three months of outbound volume by template. In most brokerages three or four templates — premium reminder, renewal notice, claim acknowledgement, document request — carry the large majority of sends. Start there and nowhere else.
  2. Capture language preference at source. Add it to the onboarding conversation and to your opt-in flow, and store it on the client record. Inferring it is worse than asking.
  3. Have a native speaker write, not translate. Ideally a representative who already services those clients. A message written by someone who makes these calls all day reads differently from a translated one, and the difference shows in reply rates.
  4. Keep variables grammatically inert. Amounts, dates and names, placed so that no language version depends on the word order of another. Check how dates and currency read aloud in each language.
  5. Submit, then verify separately. Track approval per language version and re-check the category assignment; utility and marketing classification is judged per template, and our guide to setting up WhatsApp Business for a South African brokerage covers the number, opt-in and template groundwork.
  6. Review after one cycle. Compare reply and completion rates by language on the same message. If a translated version underperforms the English one, the translation is usually the problem, not the language.

Two things to avoid. Machine-translating anything that describes cover, exclusions or a legal consequence: a mistranslated exclusion is a mis-selling exposure, and the plain-language test is about the client's understanding, not your good intentions. And letting the library sprawl — every extra language version is an asset to maintain when wording, regulation or product changes.

Where the software has to meet you

Language is where a lot of tooling quietly disappoints, so it is worth being precise about what a system does. In ORIS every template carries a language_code, and new templates default to en_GB — which is exactly the default a South African brokerage should change to en_ZA before building anything. Because language is a template property, running a multilingual book means a segment per language in Customers and Segments and a campaign per language version, rather than one campaign that picks the language itself. That is a limitation worth knowing up front; it is also a workable model, since a language segment is stable and rarely needs rebuilding.

The other half is the inbound side. If your clients write in a mix of English and another language, an AI layer reading those messages for sentiment or churn risk will not perform equally across them — we looked at the published accuracy figures in our article on testing a multilingual broker inbox before you automate. The safe pattern is templates in the client's language on the way out, a human in the client's language on the way in, and automation only where you have measured it. For the shape of the messages themselves, the premium reminder ten days before is a reasonable starting point to rewrite rather than translate.

Frequently asked questions

Can we submit one template and let Meta translate it?

No. Meta's documentation states that template strings and variables are not translated and that the business is responsible for supplying strings and example parameters in the appropriate language. Each language version is created and reviewed as its own template asset, which is also why they each count against your template limit.

Our clients speak isiXhosa. What are our options?

There is no isiXhosa code on Meta's supported list, so a template in isiXhosa cannot be created. Open the conversation with a short, plain template in a supported language that invites a reply in the client's language, and have a representative continue in isiXhosa inside the open service window, where messages are free-form and no language code applies.

Should a South African brokerage use en_ZA or en_GB?

Use en_ZA. Both are supported, but the code is metadata your team will read for years, and consistency matters more than the label: pick one English code per market and apply it everywhere so that a template library stays legible. Many tools default to en_GB, so this is a setting to change deliberately rather than inherit.

Does translating templates improve delivery or quality rating?

Not directly. Quality rating responds to how clients react to your messages — blocks and reports pull it down, replies do not hurt it. A message a client understands is less likely to be reported as unwanted, so there is a plausible indirect effect, but treat it as a conduct and comprehension decision rather than a deliverability tactic.

How many languages should we actually support?

As few as cover your real traffic. For most brokerages that is the local English variant plus one or two others, applied to the three or four highest-volume templates. Each additional language version is a submission, an approval and a maintenance obligation every time the wording changes.

See ORIS in action

Shared WhatsApp inbox, client records, follow-ups and opportunities for the whole brokerage. 15-minute demo.

Book a demo
Book a demo