MAKE DECISIONS TRUE Function in Excel and Goog… Return the logical value TRUE — used in formulas… Excel 2003+ Google Sheets Same syntax Microsoft Excel E2 =TRUE() A B C D E Name Income Tax Rate Min Income Rate 2 Alice 45000 =VLOOKUP(B2,… 0 20% 3 Bob 85000 25% 30000 20% 4 Carol 125000 30% 60000 25%
Learning Hub Functions Make Decisions

TRUE Function in Excel and Google Sheets

Make Decisions 📊 Excel 2003+ ✓ Google Sheets Same syntax in both apps
Purpose
Return the logical value TRUE — used in formulas that require an explicit boolean value, an approximate-match flag, or a guaranteed catch-all condition
Return value
The logical value TRUE
TRUE() returns the logical value TRUE and has three genuinely useful roles in everyday spreadsheet work. The first is as the range_lookup argument in VLOOKUP when you need approximate match on a sorted bracket table — writing TRUE() instead of 1 makes the intent immediately readable to anyone auditing the formula. The second is as the final catch-all condition in IFS: since TRUE() is always true, placing it last means any value that passes none of the preceding tests falls through to a safe default, the exact behaviour you get from an else clause in other programming languages. The third is for distinguishing the boolean value TRUE from the text string "TRUE" — comparing a cell to TRUE() rather than to the quoted word ensures you are matching the logical value, not text that happens to look like one. That last distinction matters more than most people realise when data arrives from external sources where booleans get imported as strings.
Syntax
✓ Excel 2003+ ✓ Google Sheets = Same syntax
=TRUE()
Arguments
ArgumentRequiredDescription
none Optional
How it works
TRUE() returns the boolean constant TRUE and can be placed anywhere a boolean is expected — as a function argument, in a comparison, or as a standalone cell value. In VLOOKUP the fourth argument controls matching mode: FALSE for exact match and TRUE for approximate match on sorted data. Writing TRUE() instead of TRUE or 1 makes this intent explicit. In IFS, TRUE() as the last logical_test creates the catch-all else clause — since TRUE() is always true, it acts as a default for any row that passes none of the preceding conditions. When checking whether a cell contains a boolean TRUE value, compare with =B2=TRUE() rather than =B2="TRUE" — the quoted version matches the text string TRUE, not the boolean. The same distinction matters in COUNTIF: COUNTIF(range,TRUE) counts boolean TRUE cells while COUNTIF(range,"TRUE") counts text cells containing the word TRUE.
Examples
1
Use TRUE() explicitly as the approximate-match argument in VLOOKUP so the formula's intent is clear when reading or auditing the sheet.
fx =VLOOKUP(B2,$E$2:$F$6,2,TRUE())
A B C D E
1 Name Income Tax Rate Min Income Rate
2 Alice 45000 =VLOOKUP(B2,$E$2:$F$6,2,TRUE()) 0 10%
3 Bob 85000 25% 30000 20%
4 Carol 125000 30% 60000 25%
5 Dan 18000 10% 100000 30%
6 Eve 160000 35% 150000 35%
Row 2: 20% — Alice earns 45,000 which falls in the 30,000 to 59,999 bracket — VLOOKUP with TRUE() finds the largest bracket minimum that is still at or below 45,000 and returns 20%.
TRUE() here is identical to writing TRUE or 1. The function form makes the argument's intent more self-documenting for readers who may not remember that 1 means approximate match. The bracket table must be sorted ascending on the first column for this to work.
2
Use TRUE() as the catch-all condition in IFS to assign a performance label, returning Below average for any score that does not match the preceding conditions.
fx =IFS(B2>=90,"Excellent",B2>=70,"Good",B2>=50,"Average",TRUE(),"Below average")
A B C
1 Student Score Label
2 Alice 95 =IFS(B2>=90,"Excellent",B2>=70,"Good",B2>=50,"Average",TRUE(),"Below average")
3 Bob 74 Good
4 Carol 52 Average
5 Dan 38 Below average
6 Eve 88 Good
Row 2: Excellent — Alice scored 95 which passes the first condition >=90 so Excellent is returned. TRUE() at the end acts as the else — Dan at 38 passes no condition and falls through to Below average.
TRUE() as the last IFS condition is always TRUE by definition, so it always catches rows that pass nothing else. This is identical to writing TRUE without parentheses — the function form simply makes the catch-all role visually explicit.
3
Check whether each cell in a response column contains the actual boolean TRUE value rather than the text string true.
fx =B2=TRUE()
A B C
1 Row Response Is boolean TRUE
2 1 TRUE =B2=TRUE()
3 2 FALSE FALSE
4 3 TRUE TRUE
5 4 true FALSE
6 5 FALSE FALSE
Row 2: TRUE — Row 1 contains the boolean TRUE which equals TRUE() so the comparison returns TRUE.
Row 4 contains the text string true (lowercase) which is not the boolean TRUE — the comparison returns FALSE. This distinction matters when data comes from external sources where booleans may have been imported as text.
Common use cases
1. Use as the range_lookup argument in VLOOKUP for approximate matching on sorted bracket tables like tax rates or commission tiers
=VLOOKUP(B2,$E$2:$F$6,2,TRUE())
2. Use as the catch-all last condition in IFS to handle any value that passes none of the preceding conditions
=IFS(B2>=90,"A",B2>=80,"B",TRUE(),"C or below")
3. Compare cell values to the boolean TRUE to distinguish actual booleans from the text string
=B2=TRUE()
4. Use as the last argument in a FILTER include condition to always include a base row
=FILTER(A2:C10,B2:B10=TRUE())
5. Explicitly pass TRUE as a function argument in compatibility scenarios where numeric 1 could be ambiguous
=VLOOKUP(A2,D:F,3,TRUE())
Common errors
Formula compares text "TRUE" instead of boolean TRUE
Wrapping TRUE in quotes — =B2="TRUE" — tests whether the cell contains the text string TRUE, not the boolean value. These are different data types and will give different results.
Fix: Use TRUE() or TRUE without quotes to compare to the boolean value. Use "TRUE" in quotes only when you specifically want to match the text string.
Unexpected results in VLOOKUP with TRUE
Approximate match requires the first column of the table to be sorted in ascending order. On unsorted data, VLOOKUP with TRUE may return wrong results without any error.
Fix: Sort the bracket table ascending on its first column before using approximate match. For unsorted data, always use FALSE for exact match.
COUNTIF(range,TRUE) returns unexpected count
The cells contain the text "TRUE" rather than the boolean TRUE, or vice versa. COUNTIF treats boolean TRUE and the text string "TRUE" as different values.
Fix: Check the cell data type with ISLOGICAL(B2). If cells contain text, use COUNTIF(range,"TRUE") to match text. If they contain booleans, use COUNTIF(range,TRUE) without quotes.
Tips and variations
Use TRUE as the IFS catch-all for clarity
TRUE or TRUE() as the last IFS condition is a widely recognised pattern — it acts as the else clause and makes the formula self-documenting. Any reader familiar with IFS immediately understands that this condition always fires as a default.
=IFS(B2>=90,"A",B2>=80,"B",B2>=70,"C",TRUE,"F")
Distinguish boolean TRUE from the text string when auditing imported data
Data imported from CSV, APIs, or external databases often represents TRUE as the text string "TRUE" rather than the boolean. Use =ISLOGICAL(B2) to check whether a cell contains the actual boolean and =B2=TRUE() to compare against it.
=ISLOGICAL(B2)
Prefer FALSE for VLOOKUP exact match over TRUE for approximate match
Approximate match with TRUE is needed only for sorted bracket tables like tax rates or grade bands. For all ID, name, and code lookups, always use FALSE to ensure exact matching. Accidentally using TRUE on unsorted data returns silently wrong results.
=VLOOKUP(A2,$D:$F,3,FALSE)
Excel vs Google Sheets
Excel vs Google Sheets
TRUE() works identically in Excel 2003 and newer and every version of Google Sheets. The syntax, the return value, and the distinction between boolean TRUE and the text string TRUE are the same in both applications.
Related reading
Frequently asked questions
TRUE() returns the boolean value TRUE. It takes no arguments. The function exists primarily for compatibility with other spreadsheet applications and for making the intent of a formula explicit when TRUE is used as an argument. Writing TRUE without parentheses works identically — both refer to the same boolean constant.
Yes. Both =TRUE and =TRUE() return the same boolean value TRUE. The function form with parentheses is provided for compatibility with systems that require all formula elements to be function calls. In practice, most Excel and Google Sheets users type TRUE without parentheses, but both work in all contexts.
Use TRUE() or TRUE when you need to explicitly pass the boolean value TRUE as an argument — such as the range_lookup argument in VLOOKUP for approximate match, the last condition in IFS as a catch-all, or when comparing a cell's value to the boolean TRUE rather than the text string true.
The boolean TRUE is a logical value. The text string TRUE (in quotes) is text that looks like TRUE but is not the logical value. COUNTIF(range,TRUE) counts boolean TRUE cells. COUNTIF(range,"TRUE") counts cells containing the text string TRUE. Formulas that perform logical operations use the boolean value, not the quoted string.
Yes. TRUE() works identically in Excel and Google Sheets. The syntax, return value, and behaviour when used as a function argument are the same in both applications.