TRIMMEAN function

Returns the mean (average) of a dataset after trimming a percentage of values from the top and bottom to remove outliers.

=TRIMMEAN(array, percent)

Generate a TRIMMEAN formula

Describe what you need. The generator will reach for TRIMMEAN where TRIMMEAN is the right tool, and tell you when it is not.

How to get a better answer
  • Name your columns by letter and by header: "column F (Net Value)" beats "the amount column".
  • State every condition, including the negatives — "not cancelled" changes the formula's shape.
  • Say where the data starts if it is not row 1, and whether it will grow.
  • Check the settings above match your spreadsheet: the wrong argument separator is a syntax error on your machine.

Arguments

How TRIMMEAN reads its arguments
arrayrequiredpercentrequiredTRIMMEAN
ArgumentRequiredDescription
arrayRequiredA range or array of numeric values to average. Must contain at least 2 values; text or non-numeric entries cause #VALUE! errors.
percentRequiredA decimal value between 0 (inclusive) and 1 (exclusive) representing the total fraction to trim from both ends combined (e.g., 0.2 trims 20% total, not per side).

Returns

A numeric value representing the trimmed mean (average) of the input array after removing extreme values.

Availability

Excel: All · Google Sheets: Supported

Worked examples

1. Establish baseline salary average with minimal adjustment

Employee IDNameDepartmentHire DateSalaryStatus
1Alice ChenSales2020-01-1530000Active
2Bob DavisIT2019-03-22120000Active
3Carol SinghHR2021-06-1040000Active
4David KimSales2018-11-0550000Active
5Eve MartinezIT2022-02-14130000Active
6Frank WilsonFinance2020-09-2860000Active
7Grace LeeSales2019-12-0145000Active
8Henry BrownIT2023-04-1180000Active
9Iris ZhangHR2021-11-1935000Active
10Jack TaylorFinance2017-05-3055000Active
=TRIMMEAN(E2:E11, 0.1)

Result: 64500

A 10% trim on 10 employees removes 0.5 values from each end, which rounds down to 0, so no values are actually excluded. The result ($64,500) is identical to AVERAGE and serves as a baseline to show the impact of stronger trims.

2. Calculate fair market value excluding extreme salaries

Employee IDNameDepartmentHire DateSalaryStatus
1Alice ChenSales2020-01-1530000Active
2Bob DavisIT2019-03-22120000Active
3Carol SinghHR2021-06-1040000Active
4David KimSales2018-11-0550000Active
5Eve MartinezIT2022-02-14130000Active
6Frank WilsonFinance2020-09-2860000Active
7Grace LeeSales2019-12-0145000Active
8Henry BrownIT2023-04-1180000Active
9Iris ZhangHR2021-11-1935000Active
10Jack TaylorFinance2017-05-3055000Active
=TRIMMEAN(E2:E11, 0.2)

Result: 60625

With 20% trim, one employee is excluded from each extreme: Alice at the low end ($30,000) and Eve at the high end ($130,000). The trimmed mean of $60,625 represents typical compensation by removing the outlier earners (intern and executive) from consideration.

3. Analyze core workforce for conservative budget forecasting

Employee IDNameDepartmentHire DateSalaryStatus
1Alice ChenSales2020-01-1530000Active
2Bob DavisIT2019-03-22120000Active
3Carol SinghHR2021-06-1040000Active
4David KimSales2018-11-0550000Active
5Eve MartinezIT2022-02-14130000Active
6Frank WilsonFinance2020-09-2860000Active
7Grace LeeSales2019-12-0145000Active
8Henry BrownIT2023-04-1180000Active
9Iris ZhangHR2021-11-1935000Active
10Jack TaylorFinance2017-05-3055000Active
=TRIMMEAN(E2:E11, 0.5)

Result: 55000

With 50% trim, two salaries are excluded from each end (30K, 35K at the bottom; 120K, 130K at the top), leaving the middle 6 employees. The result of $55,000 isolates the core workforce and is appropriate for conservative budget scenarios that ignore both entry-level and executive roles.

Common errors

Which TRIMMEAN error are you seeing?
TRIMMEAN returned an error#NUM!
Convert the percentage to a decimal: 20% becomes 0.2, 50% becomes 0.5. Ensure the value is ≥0 and <1.
#VALUE!
Verify the array references only numeric columns (like salary, not department or hire date). Exclude or filter out text entries before passing to TRIMMEAN.
#REF!
Restore the deleted column, update the formula to reference the correct column, or rebuild the reference range. Consider using named ranges for stability.
ErrorWhy it happensHow to fix it
#NUM!The percent argument is outside the valid range of 0 to 1. A common mistake is entering 20 (meaning 20%) instead of 0.2, or using negative values like -0.1.Convert the percentage to a decimal: 20% becomes 0.2, 50% becomes 0.5. Ensure the value is ≥0 and <1.
#VALUE!The array argument contains non-numeric values such as text, dates stored as text, or mixed data types. TRIMMEAN cannot perform calculations on text.Verify the array references only numeric columns (like salary, not department or hire date). Exclude or filter out text entries before passing to TRIMMEAN.
#REF!The array range references cells that no longer exist, such as a deleted column or moved data. For example, =TRIMMEAN(E2:E11, 0.2) breaks if column E is deleted.Restore the deleted column, update the formula to reference the correct column, or rebuild the reference range. Consider using named ranges for stability.

Tips and when to use something else

  • TRIMMEAN removes values symmetrically from both extremes. With 20% trim on 10 values, one value is removed from the top and one from the bottom (not two from one side).
  • When the trim percentage is small and rounds to zero (e.g., 10% on 10 values removes 0.5, rounded down to 0), TRIMMEAN behaves exactly like AVERAGE—use AVERAGE instead to simplify your formula.
  • Unlike manually filtering or using IF statements to remove outliers, TRIMMEAN calculates the robust mean without modifying your source data, making it cleaner for one-off analyses.
  • Use AVERAGEIF or AVERAGEIFS instead of TRIMMEAN when you need to filter rows by criteria (e.g., only IT department); TRIMMEAN is designed for symmetric trimming of extremes, not conditional row filtering.

Frequently asked questions

Why does TRIMMEAN return the same value as AVERAGE when I use 10% trim?
On a 10-value dataset, 10% trim removes 0.5 values from each end, which rounds down to 0, so no trimming occurs. You need more data points or a higher trim percentage to see TRIMMEAN differ from AVERAGE.
Can I use TRIMMEAN to exclude only rows that meet a condition (like a specific department)?
In Google Sheets, use an array formula: =TRIMMEAN(IF(D2:D11="IT", E2:E11), 0.2) with Ctrl+Shift+Enter. In Excel, use dynamic arrays or helper columns; TRIMMEAN does not natively support conditional row filtering like AVERAGEIF does.
How is TRIMMEAN different from MEDIAN?
MEDIAN returns the middle value(s) and is completely unaffected by outliers; TRIMMEAN removes a specified percentage from extremes and then averages the rest. TRIMMEAN gives you control over how much to dampen outlier impact.
What trim percentage should I use for my analysis?
Start with 10–20% for mild outlier dampening, or 30–50% for aggressive filtering. Test on your data and choose based on your use case: 20% is common in financial benchmarking, while 50% is useful for conservative forecasts.

Need a different formula?

The full generator is not scoped to one function — describe any spreadsheet problem and it will pick.

Open the formula generator

Reviewed 2026-09-17