← All functions

MARGINOFERROR

Unsupported (not recognized)

Category: Statistical · Last tested 2026-09-01

Real compatibility results for the MARGINOFERROR function: executed in Excel for the web, Google Sheets and LibreOffice Calc, measured against Google’s published documentation. Excel does not document MARGINOFERROR, so this page makes no claim about Excel. Syntax and links to that documentation are below.

Support matrix

EngineDocumentedLive-testedVerdict
Excel (desktop)No n/a (not an Excel function) n/a
Excel for the web— Yes (recalc, 2026-09-01) Unsupported (not recognized)
Google SheetsYes Yes (Drive import, 2026-09-01) Supported, behaves as documented
LibreOffice CalcNo Yes (25.8.7.3, 2026-09-01) Unsupported (not recognized)

LibreOffice version history

We executed the same test cases under each LibreOffice release to show exactly when MARGINOFERROR’s support changed — not documentation claims, real results.

LibreOffice versionVerdictTested
24.2.0.3 Unsupported (not recognized) 2026-09-01
24.8.7.2 Unsupported (not recognized) 2026-09-01
25.2.0.3 Unsupported (not recognized) 2026-09-01
25.8.7.3 Unsupported (not recognized) 2026-09-01

Why isn't MARGINOFERROR working in LibreOffice?

LibreOffice Calc does not implement MARGINOFERROR as of 25.8.7.3 — in our executed tests it returns a #NAME? (unrecognized function) error. This is not a typo or a settings problem, and saving the file as .xlsx does not change it: the function simply isn’t available yet. Watch the LibreOffice version support page — we re-run every test on each new release, so it will flip to Supported here as soon as it lands.

Discovered quirks

Executed test cases

Excel for the web (executed 2026-09-01 via OneDrive recalculation)

These values come from Excel for the web, not from desktop Excel. They are two different implementations of the calculation engine, and this run measured only the web one: the corpus was uploaded to OneDrive as .xlsx, recalculated by Excel for the web on open, and downloaded again for readback. Excel for the web is a rolling service with no pinnable version, so the run is identified by its date. Where a value here disagrees with the Expected column — which is Microsoft’s documentation of the desktop product — we cannot tell you whether the web engine diverges from the desktop one or the documentation is wrong about both, because we do not run desktop Excel.

FormulaDescriptionResultExpectedVerdict
=ROUND(MARGINOFERROR(A1:A4, 0.95),3) The page's published worked example at three decimals #NAME? 3.528
Provenance

GOOGLE'S OWN PUBLISHED RESULT, from the Examples table in the article body: over A1:A4 = 8, 4, 3, 6 with mean 5.25, =MARGINOFERROR(A1:A4, 0.95) -> 3.528, with the confidence interval printed as [1.722, 8.778]. DERIVATION. Google's page gives the definition in TEXT, not as an image: "MARGINOFERROR(range, confidence) is equal to CONFIDENCE.T(1 - confidence, STDEV(range), COUNT(range))." STDEV is the SAMPLE standard deviation, and CONFIDENCE.T is the Student-t form, not the normal one -- the page names CONFIDENCE.NORM only as a related link. The figures below were derived TWICE along paths sharing no code: the t density integrated by numerical quadrature to 40 digits with the critical value obtained by root-finding on that CDF, and scipy's inverse t as an independent check. The two agree to 15 significant digits. For the page's data {8, 4, 3, 6}: n = 4, mean 5.25, sample standard deviation 2.2173557826083451, t(0.025, 3) = 3.1824463052837096, margin = 3.5283078589306981. Google's MARGINOFERROR page, read live on 2026-08-31 at https://support.google.com/docs/answer/12487850. BATCH PROVENANCE (batch H, the first Sheets/LibreOffice-only batch). Every function in this batch has x == false in docs/data/compat.json: it is a Google Sheets function that Microsoft does not document at all, so this corpus makes NO claim about it in that engine and nothing here is measured against that vendor's documentation. The authority is Google's own support.google.com function page, cited by full URL and by the date it was read -- Google publishes no version number for these pages, so a bare URL dates nothing. WHAT GOOGLE ACTUALLY PRINTS, WHICH IS LESS THAN IT LOOKS: most of these pages carry a 'Sample Usage' block of FORMULAS WITH NO RESULTS. Where a value below is Google's own published output the note says so; where it is derived from the page's stated semantics the note says that instead, and says from which sentence. No value in this batch was taken from a search snippet, a blog or a mirror. LIBREOFFICE: probed on all four pinned builds (24.2.0.3, 24.8.7.2, 25.2.0.3, 25.8.7.3) in five storage spellings -- plain, _xlfn., COM.MICROSOFT., ORG.OPENOFFICE. and _xlfn.ORG.OPENOFFICE. -- and #NAME? under every one of them, so the expected values below describe Google Sheets and the LibreOffice column records absence.

Mismatch
=ROUND(MARGINOFERROR(A1:A4, 0.95),6) The same example carried three places past what Google prints #NAME? 3.528308
Provenance

DERIVED, not published: the page rounds to three decimals and stops. Asserted at six places from the independent derivation, 3.5283078589306981. This is the case that would catch a normal-distribution implementation masquerading as a t one -- the z form gives 2.1727 here, which the page's own three-decimal figure already rules out. Google's MARGINOFERROR page, read live on 2026-08-31 at https://support.google.com/docs/answer/12487850.

Mismatch
=ROUND(MARGINOFERROR(A1:A4, 0.95)-CONFIDENCE.T(1-0.95, STDEV(A1:A4), COUNT(A1:A4)),12) The documented identity, asserted structurally against the engine's own CONFIDENCE.T #NAME? 0
Provenance

A structural assertion with no derived constant, taken verbatim from the page's definition bullet. It is the strongest single check available here: it holds whatever the engine's t quantiles are, and it fails if MARGINOFERROR quietly uses the population standard deviation or the normal quantile. Google's MARGINOFERROR page, read live on 2026-08-31 at https://support.google.com/docs/answer/12487850.

Mismatch
=ROUND(AVERAGE(A1:A4)-MARGINOFERROR(A1:A4, 0.95),3) The lower bound of the confidence interval the page prints #NAME? 1.722
Provenance

GOOGLE'S OWN PUBLISHED FIGURE: the Examples table prints "Lower Bound (Mean - MARGINOFERROR)" as 1.722 and the upper bound as 8.778, over mean 5.25. 5.25 - 3.5283079 = 1.7216921, which rounds to 1.722. Google's MARGINOFERROR page, read live on 2026-08-31 at https://support.google.com/docs/answer/12487850.

Mismatch
=ROUND(MARGINOFERROR(A1:A4, 0.99),6) The same data at the higher confidence level the page's second sample uses #NAME? 6.475687
Provenance

DERIVED, not published. The page's second Sample Usage line is MARGINOFERROR(A1:C3, 0.99) with no result and no data, so this case applies its confidence level to the data the page DOES publish. t(0.005, 3) = 5.8409093097333573 and the margin is 6.4756870168140886, derived twice as above. It checks that the confidence argument actually reaches the quantile: a hard-coded 95% level would return 3.528308 here. Google's MARGINOFERROR page, read live on 2026-08-31 at https://support.google.com/docs/answer/12487850.

Mismatch

Google Sheets (executed 2026-09-01 via Drive import)

Google Sheets is a rolling service with no pinnable version, so this run is identified by its date. The corpus was imported to Drive as .xlsx, recalculated by Sheets, and exported back for readback.

FormulaDescriptionResultExpectedVerdict
=ROUND(MARGINOFERROR(A1:A4, 0.95),3) The page's published worked example at three decimals 3.528 3.528
Provenance

GOOGLE'S OWN PUBLISHED RESULT, from the Examples table in the article body: over A1:A4 = 8, 4, 3, 6 with mean 5.25, =MARGINOFERROR(A1:A4, 0.95) -> 3.528, with the confidence interval printed as [1.722, 8.778]. DERIVATION. Google's page gives the definition in TEXT, not as an image: "MARGINOFERROR(range, confidence) is equal to CONFIDENCE.T(1 - confidence, STDEV(range), COUNT(range))." STDEV is the SAMPLE standard deviation, and CONFIDENCE.T is the Student-t form, not the normal one -- the page names CONFIDENCE.NORM only as a related link. The figures below were derived TWICE along paths sharing no code: the t density integrated by numerical quadrature to 40 digits with the critical value obtained by root-finding on that CDF, and scipy's inverse t as an independent check. The two agree to 15 significant digits. For the page's data {8, 4, 3, 6}: n = 4, mean 5.25, sample standard deviation 2.2173557826083451, t(0.025, 3) = 3.1824463052837096, margin = 3.5283078589306981. Google's MARGINOFERROR page, read live on 2026-08-31 at https://support.google.com/docs/answer/12487850. BATCH PROVENANCE (batch H, the first Sheets/LibreOffice-only batch). Every function in this batch has x == false in docs/data/compat.json: it is a Google Sheets function that Microsoft does not document at all, so this corpus makes NO claim about it in that engine and nothing here is measured against that vendor's documentation. The authority is Google's own support.google.com function page, cited by full URL and by the date it was read -- Google publishes no version number for these pages, so a bare URL dates nothing. WHAT GOOGLE ACTUALLY PRINTS, WHICH IS LESS THAN IT LOOKS: most of these pages carry a 'Sample Usage' block of FORMULAS WITH NO RESULTS. Where a value below is Google's own published output the note says so; where it is derived from the page's stated semantics the note says that instead, and says from which sentence. No value in this batch was taken from a search snippet, a blog or a mirror. LIBREOFFICE: probed on all four pinned builds (24.2.0.3, 24.8.7.2, 25.2.0.3, 25.8.7.3) in five storage spellings -- plain, _xlfn., COM.MICROSOFT., ORG.OPENOFFICE. and _xlfn.ORG.OPENOFFICE. -- and #NAME? under every one of them, so the expected values below describe Google Sheets and the LibreOffice column records absence.

Matched
=ROUND(MARGINOFERROR(A1:A4, 0.95),6) The same example carried three places past what Google prints 3.528308 3.528308
Provenance

DERIVED, not published: the page rounds to three decimals and stops. Asserted at six places from the independent derivation, 3.5283078589306981. This is the case that would catch a normal-distribution implementation masquerading as a t one -- the z form gives 2.1727 here, which the page's own three-decimal figure already rules out. Google's MARGINOFERROR page, read live on 2026-08-31 at https://support.google.com/docs/answer/12487850.

Matched
=ROUND(MARGINOFERROR(A1:A4, 0.95)-CONFIDENCE.T(1-0.95, STDEV(A1:A4), COUNT(A1:A4)),12) The documented identity, asserted structurally against the engine's own CONFIDENCE.T 0 0
Provenance

A structural assertion with no derived constant, taken verbatim from the page's definition bullet. It is the strongest single check available here: it holds whatever the engine's t quantiles are, and it fails if MARGINOFERROR quietly uses the population standard deviation or the normal quantile. Google's MARGINOFERROR page, read live on 2026-08-31 at https://support.google.com/docs/answer/12487850.

Matched
=ROUND(AVERAGE(A1:A4)-MARGINOFERROR(A1:A4, 0.95),3) The lower bound of the confidence interval the page prints 1.722 1.722
Provenance

GOOGLE'S OWN PUBLISHED FIGURE: the Examples table prints "Lower Bound (Mean - MARGINOFERROR)" as 1.722 and the upper bound as 8.778, over mean 5.25. 5.25 - 3.5283079 = 1.7216921, which rounds to 1.722. Google's MARGINOFERROR page, read live on 2026-08-31 at https://support.google.com/docs/answer/12487850.

Matched
=ROUND(MARGINOFERROR(A1:A4, 0.99),6) The same data at the higher confidence level the page's second sample uses 6.475687 6.475687
Provenance

DERIVED, not published. The page's second Sample Usage line is MARGINOFERROR(A1:C3, 0.99) with no result and no data, so this case applies its confidence level to the data the page DOES publish. t(0.005, 3) = 5.8409093097333573 and the margin is 6.4756870168140886, derived twice as above. It checks that the confidence argument actually reaches the quantile: a hard-coded 95% level would return 3.528308 here. Google's MARGINOFERROR page, read live on 2026-08-31 at https://support.google.com/docs/answer/12487850.

Matched

LibreOffice Calc 25.8.7.3 (tested 2026-09-01)

FormulaDescriptionResultExpectedVerdict
=ROUND(MARGINOFERROR(A1:A4, 0.95),3) The page's published worked example at three decimals #NAME? 3.528
Provenance

GOOGLE'S OWN PUBLISHED RESULT, from the Examples table in the article body: over A1:A4 = 8, 4, 3, 6 with mean 5.25, =MARGINOFERROR(A1:A4, 0.95) -> 3.528, with the confidence interval printed as [1.722, 8.778]. DERIVATION. Google's page gives the definition in TEXT, not as an image: "MARGINOFERROR(range, confidence) is equal to CONFIDENCE.T(1 - confidence, STDEV(range), COUNT(range))." STDEV is the SAMPLE standard deviation, and CONFIDENCE.T is the Student-t form, not the normal one -- the page names CONFIDENCE.NORM only as a related link. The figures below were derived TWICE along paths sharing no code: the t density integrated by numerical quadrature to 40 digits with the critical value obtained by root-finding on that CDF, and scipy's inverse t as an independent check. The two agree to 15 significant digits. For the page's data {8, 4, 3, 6}: n = 4, mean 5.25, sample standard deviation 2.2173557826083451, t(0.025, 3) = 3.1824463052837096, margin = 3.5283078589306981. Google's MARGINOFERROR page, read live on 2026-08-31 at https://support.google.com/docs/answer/12487850. BATCH PROVENANCE (batch H, the first Sheets/LibreOffice-only batch). Every function in this batch has x == false in docs/data/compat.json: it is a Google Sheets function that Microsoft does not document at all, so this corpus makes NO claim about it in that engine and nothing here is measured against that vendor's documentation. The authority is Google's own support.google.com function page, cited by full URL and by the date it was read -- Google publishes no version number for these pages, so a bare URL dates nothing. WHAT GOOGLE ACTUALLY PRINTS, WHICH IS LESS THAN IT LOOKS: most of these pages carry a 'Sample Usage' block of FORMULAS WITH NO RESULTS. Where a value below is Google's own published output the note says so; where it is derived from the page's stated semantics the note says that instead, and says from which sentence. No value in this batch was taken from a search snippet, a blog or a mirror. LIBREOFFICE: probed on all four pinned builds (24.2.0.3, 24.8.7.2, 25.2.0.3, 25.8.7.3) in five storage spellings -- plain, _xlfn., COM.MICROSOFT., ORG.OPENOFFICE. and _xlfn.ORG.OPENOFFICE. -- and #NAME? under every one of them, so the expected values below describe Google Sheets and the LibreOffice column records absence.

Mismatch
=ROUND(MARGINOFERROR(A1:A4, 0.95),6) The same example carried three places past what Google prints #NAME? 3.528308
Provenance

DERIVED, not published: the page rounds to three decimals and stops. Asserted at six places from the independent derivation, 3.5283078589306981. This is the case that would catch a normal-distribution implementation masquerading as a t one -- the z form gives 2.1727 here, which the page's own three-decimal figure already rules out. Google's MARGINOFERROR page, read live on 2026-08-31 at https://support.google.com/docs/answer/12487850.

Mismatch
=ROUND(MARGINOFERROR(A1:A4, 0.95)-CONFIDENCE.T(1-0.95, STDEV(A1:A4), COUNT(A1:A4)),12) The documented identity, asserted structurally against the engine's own CONFIDENCE.T #NAME? 0
Provenance

A structural assertion with no derived constant, taken verbatim from the page's definition bullet. It is the strongest single check available here: it holds whatever the engine's t quantiles are, and it fails if MARGINOFERROR quietly uses the population standard deviation or the normal quantile. Google's MARGINOFERROR page, read live on 2026-08-31 at https://support.google.com/docs/answer/12487850.

Mismatch
=ROUND(AVERAGE(A1:A4)-MARGINOFERROR(A1:A4, 0.95),3) The lower bound of the confidence interval the page prints #NAME? 1.722
Provenance

GOOGLE'S OWN PUBLISHED FIGURE: the Examples table prints "Lower Bound (Mean - MARGINOFERROR)" as 1.722 and the upper bound as 8.778, over mean 5.25. 5.25 - 3.5283079 = 1.7216921, which rounds to 1.722. Google's MARGINOFERROR page, read live on 2026-08-31 at https://support.google.com/docs/answer/12487850.

Mismatch
=ROUND(MARGINOFERROR(A1:A4, 0.99),6) The same data at the higher confidence level the page's second sample uses #NAME? 6.475687
Provenance

DERIVED, not published. The page's second Sample Usage line is MARGINOFERROR(A1:C3, 0.99) with no result and no data, so this case applies its confidence level to the data the page DOES publish. t(0.005, 3) = 5.8409093097333573 and the margin is 6.4756870168140886, derived twice as above. It checks that the confidence argument actually reaches the quantile: a hard-coded 95% level would return 3.528308 here. Google's MARGINOFERROR page, read live on 2026-08-31 at https://support.google.com/docs/answer/12487850.

Mismatch

Docs & syntax

Where MARGINOFERROR behaves differently