Introduction
Many English speakers learning Portuguese see the sentence Eu tenho 20 anos velho and assume it is correct because it mirrors English word order. However, this combination mixes two different ways to express age and creates a grammatically incorrect and unnatural phrase in Brazilian Portuguese. This article explains why it is wrong and how to say age correctly, step by step.
- Why Eu tenho 20 anos velho is wrong
- Two correct ways to talk about age in Brazilian Portuguese
- Why velho is not used with numbers
- How adjectives agree and where they belong
- Common learner mistakes and how to fix them
- Practical examples and variations
- Set phrases and idiomatic uses
- Politeness and social notes about age in Brazil
- Quick reference: correct and incorrect forms
- How to practice and internalize the rule
- Common related verbs and vocabulary
- Final tips and reminders
- Conclusion
Why Eu tenho 20 anos velho is wrong
In Brazilian Portuguese, age is expressed with the verb ter, not with the adjective velho. The phrase Eu tenho 20 anos is the standard and correct way to say I am 20 years old, literally I have 20 years. Adding the adjective velho is redundant and ungrammatical because velho functions as an adjective that would describe a noun, but age is already given by the numeral + anos construction.
English uses the verb to be and the adjective old: I am 20 years old. Direct translation of that structure leads many learners to add velho after the age, producing Eu tenho 20 anos velho. That is incorrect because Portuguese and English use different syntactic patterns to express the same concept.
Two correct ways to talk about age in Brazilian Portuguese
Brazilian Portuguese has two natural ways to express age. Both are common, but they work differently and are used in different contexts.
1. Using ter + anos
The most common and neutral way is ter + number + anos. This is the form used in everyday speech and in most situations.
Structure: Subject + ter (conjugated) + number + anos
Examples:
Eu tenho 20 anos.
Ela tem 30 anos.
Nós temos 5 anos de experiência.
This shows years in a different context (experience), where anos pairs with de.
Note that the noun anos (years) stays after the number; you never place the adjective velho to express age in this construction.
2. Using ser + idade + anos as an adjective (less common)
Portuguese can also use ser + idade as an adjectival phrase, but this rarely uses the word anos. Instead, ser + velho/jovem is used to describe someone as old or young, not to state a precise age number.
Structure: Subject + ser + adjective
Examples:
Ele é velho.
Ela é jovem.
You can say Eu sou jovem or Ele é velho, but you cannot combine ser with a number in the same way as English I am 20 years old. The number form uses ter, while ser is for general descriptions.
Why velho is not used with numbers
The adjective velho means old in a descriptive sense. When you say someone is old, you are making a qualitative statement, not giving a measurement. Adding velho after a numeric age sounds awkward because the age alone already provides the measurement. In Portuguese the measurement expression ter + anos is complete in itself.
Compare these two sentences to see the difference:
Eu tenho 70 anos.
Eu sou velho.
The first gives a specific age. The second gives a general attribute. It would be redundant to say Eu tenho 70 anos velho because the number already indicates oldness; instead use one or the other depending on what you want to express.
How adjectives agree and where they belong
Portuguese adjectives must agree in gender and number with the noun they modify. The adjective velho will change to velha, velhos, velhas depending on the noun. But in age expressions with anos, there is no noun that needs this agreement: the noun anos is plural and the numeral specifies how many years. If you were to attach an adjective to a noun, it would follow the noun and agree with it, for example:
Um homem velho.
Uma senhora velha.
Notice how the adjective follows and agrees: homem velho, senhora velha. This pattern is separate from age specification, which relies on ter + anos.
Common learner mistakes and how to fix them
Mistake 1: Direct translation from English
Many learners write Eu tenho 20 anos velho because they translate I am 20 years old word for word. Fix: Learn that Portuguese uses ter for numerical age, so say Eu tenho 20 anos.
Mistake 2: Mixing both structures
Another common error is mixing ser and ter incorrectly, for example Eu sou 20 anos. This is also wrong because ser is not used with numbers in this context. Fix: Use ter: Eu tenho 20 anos.
Mistake 3: Using velho to emphasize age
Some learners think adding velho will emphasize that someone is old. Instead of adding velho after the number, native speakers either use the adjective alone or use an adverb or phrase to emphasize, such as muito velho, bem velho, or realmente velho. Examples:
Ele é muito velho.
Ela é bem velha.
Practical examples and variations
Here are natural ways Brazilians express age with contexts and small variations.
Basic statements:
Eu tenho 18 anos.
Ela tem 25 anos.
Meu irmão tem 10 anos.
Asking someone’s age:
Quantos anos você tem?
Quantos anos ele tem?
Responding politely (less direct):
Tenho 30 anos.
Tenho 29.
Using age in descriptions or with experience:
Tenho dois anos de experiência.
Tenho anos de prática com violão.
Tenho 3 anos de casado (colloquial; more formal: Estou casado há 3 anos).
Expressing age with adjectives:
Ele é muito velho para isso.
Ela é jovem e cheia de energia.
Set phrases and idiomatic uses
Some expressions combine anos with other prepositions or words. Pay attention to context because these constructions are not the same as stating your age.
Fazer anos — used with birthday: Hoje faço 25 anos.
Complete this meaning: Today I turn 25.
Há or desde — talking about duration: Moro aqui há 5 anos.
Isso means I have lived here for 5 years; notice we use há, not ter.
Antes de and depois de — relative time expressions: Antes de ter 20 anos, eu morava no interior.
Depois dos 30, ele mudou de carreira.
Politeness and social notes about age in Brazil
Asking someone’s age can be sensitive in some social contexts. In Brazil, it is common to ask age for practical reasons (documents, medical, registration), but in casual conversation some people may consider it personal. Younger people or close friends will ask Quantos anos você tem?, while in more formal situations people might avoid asking directly and use alternatives like Você pode me dizer sua data de nascimento? or Fica à vontade para não responder.
Also, using velho as an insult or joke requires attention. Calling someone velho can be playful among friends, but it can offend if used disrespectfully, especially to older adults. Always consider tone and relationship when using words like velho or jovem.
Quick reference: correct and incorrect forms
Correct: Eu tenho 20 anos.
Correct: Eu sou velho. (general description)
Incorrect: Eu tenho 20 anos velho.
Incorrect: Eu sou 20 anos.
How to practice and internalize the rule
Focus on the pattern ter + number + anos whenever you want to state an age. Repeat common phrases aloud: Eu tenho 21 anos, Eu tenho 16 anos, Ela tem 45 anos. Listen for native speech in Brazilian podcasts, films, and conversations to hear the natural rhythm of age expressions. Pay attention to contexts where velho is used: descriptive contexts, not numerical ones.
When forming sentences, ask yourself: am I giving a measurement (age in years)? If yes, use ter + anos. Am I making a descriptive statement about someone being old or young? Then use ser + velho/jovem.
Common related verbs and vocabulary
Here are a few verbs and nouns that often appear with age expressions:
nascer — to be born
eu nasci em 2000 (I was born in 2000)
fazer — to turn (age)
Ela faz 30 anos amanhã.
aniversário — birthday
Meu aniversário é em julho.
idade — age
Qual é a sua idade?
Final tips and reminders
Remember that literal translation from English often leads to mistakes. Keep these simple rules in mind:
– Use ter + number + anos to state an age.
– Use ser + velho/jovem for general descriptions, not for numeric age.
– Do not add velho after a numeric age; it is redundant and ungrammatical.
With practice you will quickly develop the habit of saying Eu tenho X anos without feeling the urge to add velho. Listening to Portuguese in real contexts will reinforce the correct patterns and help you sound more natural.
Conclusion
Eu tenho 20 anos velho is wrong because Brazilian Portuguese expresses age with ter + anos, not by attaching the adjective velho to a numeric age. Use Eu tenho 20 anos to state your age, or Eu sou velho to describe someone as old. Understanding this structural difference will make your Portuguese clearer and more natural.

