Getting AI Output in Brazilian Portuguese Instead of European Portuguese
9 min read · updated August 11, 2026
Brazilian and European Portuguese share almost all of their vocabulary and, since the 1990 orthographic agreement, most of their spelling. What separates them is syntax, and that is why output built from a swap list still reads as European to a Brazilian.
Why a word list is not enough
The Acordo Ortográfico da Língua Portuguesa of 1990, implemented in Brazil and Portugal over the following two decades, removed most of the systematic spelling differences between the two — the silent consonants that gave facto against fato, much of the divergent accentuation. What it did not touch, because orthography reform cannot, is grammar.
So the reliable signals are structural. A text can use only words found in both varieties and still be unmistakably one or the other, because the pronouns, the verb constructions and the position of object clitics differ throughout. Those features appear in nearly every sentence, which is what makes them both the strongest tell and the thing to put in the prompt.
The three syntactic tells
- Second person: você versus tu. Standard Brazilian addresses one person as você, taking third-person verb agreement (você fala). European Portuguese uses tu with second-person agreement (tu falas) for the informal, reserving você for a formal or distant register where a Brazilian would hear nothing unusual. Because the agreement differs, this propagates to every verb in the text. Related: the possessive follows — Brazilian seu/sua where European uses teu/tua.
- Progressive aspect: gerund versus a + infinitive. Brazilian says estou fazendo; European says estou a fazer. This is the single fastest tell in a body of text, it appears constantly in instructional and conversational writing, and no vocabulary substitution will produce it. If you specify one thing, specify this.
- Clitic placement: proclisis versus enclisis. Brazilian puts object pronouns before the verb, including at the start of a sentence — me diga, te amo, se chama. European prefers them after, hyphenated: diga-me, amo-te, chama-se. European also uses mesoclisis in future and conditional forms (dir-te-ei), a construction essentially absent from Brazilian writing and an immediate giveaway.
A fourth, softer signal: Brazilian frequently drops the definite article before possessives (meu carro) where European keeps it (o meu carro). It is less consistent than the three above but it accumulates over a document.
Vocabulary that does differ
The lexical differences that survive are concentrated in everyday nouns and in technical terms, and they are worth listing in the prompt because they are the ones a reader trips over:
concept Brazilian (pt-BR) European (pt-PT) ----------------------------------------------------------- mobile phone celular telemóvel bus ônibus autocarro train trem comboio screen tela ecrã file arquivo ficheiro mouse mouse rato team time equipa breakfast café da manhã pequeno-almoço juice suco sumo ice cream sorvete gelado to record gravar gravar / registar user usuário utilizador to plan planejar planear
Note usuário against utilizador in particular: it appears in almost every software interface string, so a single wrong choice is visible on every screen of a product. Note also that a handful of spelling differences did survive the agreement, mostly around unstressed vowels — Brazilian planejar and gênero against European planear and género.
Numbers, dates and money
The variety instruction does not touch locale data, and locale data is what a reader notices on any screen with figures on it. The two Portuguese locales agree on more of this than the Spanish pair does, but not on all of it.
- Decimal and thousands marks. Both use a decimal comma and a thousands point:
1.234,56. This is one of the few places where you do not need to intervene, and it is worth knowing so you do not spend effort on it. - Currency. Brazil uses the real, written
R$ 1.234,56with the symbol before the amount and a space after it. Portugal uses the euro, conventionally written after the amount:1 234,56 €. Note that Portugal also commonly uses a space rather than a point as the thousands separator in the euro convention, so the two differ in both symbol position and grouping character. Getting this wrong is the single most visible formatting error in a commercial application. - Dates. Both use day-first, but the separator differs in practice —
DD/MM/YYYYis standard in Brazil,DD-MM-YYYYandDD/MM/YYYYboth appear in Portugal. Month names in Brazilian usage are conventionally lowercase (15 de março de 2026), which is the same in both. - Time. Both use the 24-hour clock, but Brazil conventionally writes
14h30or14:30where Portugal more often uses14h30. Where a clock time appears in generated prose rather than in a formatted field, say which you want. - Phone and postal formats. Brazilian numbers are +55 with a two-digit area code and a nine-digit mobile number; Portuguese are +351 with nine digits and no trunk prefix. Brazilian postal codes are the eight-digit CEP written
00000-000; Portuguese are0000-000. A validation regex written for one rejects the other, which is a common and avoidable bug — see postal code validation by country.
The general rule is to format numbers, dates and currency with a locale-aware library rather than asking the model to produce them as text, and to reserve the prompt for the linguistic choices it is actually good at. A model asked to write prose and format currency will get one of them wrong somewhere in a long document, because formatting is not a linguistic decision and there is nothing in the sampling process that keeps it consistent.
Specifying it reliably
- Use the locale tag, not the language name. Write “Brazilian Portuguese (pt-BR)” rather than “Portuguese”. The BCP 47 tag is a strong, unambiguous token that appears throughout localisation data in training corpora. RFC 5646 defines the tag syntax.
- State the three syntactic rules explicitly. “Use você with third-person agreement. Use the gerund for progressive aspect (estou fazendo), never estar + a + infinitive. Place object pronouns before the verb (me diga), never enclitically.”
- Forbid mesoclisis by name. It is rare enough that a single instruction removes it, and it is the most jarring European construction for a Brazilian reader.
- Give a two-sentence example in the target variety. One correct sentence containing você, a gerund and a proclitic pronoun sets the pattern more effectively than the rules do.
- Name the audience, not just the variety. “Write for a Brazilian software user” picks up register and terminology choices that a variety label alone does not, in the same way described in specifying formal and informal register.
Holding it across a long document
Variety adherence decays over length for the same reason spelling conventions do: each token is sampled given the preceding context, and a single European construction that slips in raises the probability of the next one. The practical countermeasures are to generate in sections rather than in one pass, to repeat the variety instruction at the end of each user turn, and to run a mechanical check afterwards.
The check is easy here, which is unusual. Search the output for the string " a " preceded by a form of estar, for hyphenated enclitic pronouns (-me, -te, -se, -lhe at word end), and for the vocabulary in the right-hand column above. Any hit is European Portuguese, and unlike most variety checks it produces almost no false positives. A separate pass with a deterministic substitution list is the reliable fix, for the reasons argued in holding a spelling convention across a long document.
One thing not to do: generate in European Portuguese and convert. The syntactic differences are not substitutions — converting estou a fazer to estou fazendo requires parsing, and converting mesoclisis requires rebuilding the verb form. Specify the variety at generation time and the problem does not arise.