← All functions

IMAGE

Quirk found

Category: Lookup and reference · Last tested 2026-09-01

Real compatibility results for the IMAGE function: executed in Excel for the web, Google Sheets and LibreOffice Calc, with desktop Excel behavior from Microsoft’s official documentation (we do not run desktop Excel — Excel for the web is a different application and is executed separately). Syntax and links to that documentation are below.

Support matrix

EngineDocumentedLive-testedVerdict
Excel (desktop)Yes No — documented only n/a
Excel for the web— Yes (recalc, 2026-09-01) Quirk found
Google SheetsYes Yes (Drive import, 2026-08-31) Quirk found
LibreOffice CalcNo Yes (25.8.7.3, 2026-08-31) Unsupported (not recognized)

LibreOffice version history

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

LibreOffice versionVerdictTested
24.2.0.3 Unsupported (not recognized) 2026-08-31
24.8.7.2 Unsupported (not recognized) 2026-08-31
25.2.0.3 Unsupported (not recognized) 2026-08-31
25.8.7.3 Unsupported (not recognized) 2026-08-31

Why isn't IMAGE working in LibreOffice?

LibreOffice Calc does not implement IMAGE 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. The same formula is documented for Excel and documented for Google Sheets. 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.

Why isn’t IMAGE working in Google Sheets?

IMAGE runs in Google Sheets, but our executed cases show it does not match Excel’s documented behavior on every input (the failing cases are listed on this page). If a formula that behaves one way in Excel gives you a different answer in Sheets, compare your usage against those cases before assuming your data is wrong.

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
=IMAGE("https://example.com/example.png") Existence probe only: the documented single-argument form, recorded without an asserted expected value #VALUE!
Provenance

NOT REPRODUCIBLE OFFLINE, and recorded as a probe rather than as a support claim -- the same treatment batch B gave COPILOT and the CUBE* family and batch C gave DETECTLANGUAGE. Microsoft's IMAGE page documents the function as inserting an image "from a source location" given "The URL path, using an 'https' protocol, of the image file", and its own error vocabulary is made of network and policy outcomes rather than computed values: #CONNECT! "If there are issues with your internet connection or the server providing the source", and #BLOCKED! "If your security settings block access to the image file". The successful return value is not a value at all in the spreadsheet sense -- it is an image rendered in the cell -- so there is nothing a .xlsx round trip could read back and compare, and no offline engine could produce it. EXECUTED RESULT: probing all four LibreOffice builds (24.2.0.3, 24.8.7.2, 25.2.0.3, 25.8.7.3) with the plain name, the _xlfn. storage form and the COM.MICROSOFT. add-in form returned #NAME? for all three spellings on every build, which is the signature of a name the engine does not implement at all.

Error
=IMAGE("https://example.com/example.png","alt text",5) The documented #VALUE! branch for an out-of-range sizing argument, recorded as a probe #VALUE!
Provenance

Excel documents "Excel returns a #VALUE! error under the following circumstances: ... If sizing is not between 0 and 3", and 5 is outside the documented 0-3 range, so in Excel this is a deterministic, network-independent #VALUE!. It is nevertheless recorded WITHOUT an asserted expected value, because an engine that does not implement IMAGE at all cannot meaningfully be said to pass or fail an argument-validation branch of it, and a #NAME? here would otherwise be scored as a wrong answer to a question the engine was never asked. NOT REPRODUCIBLE OFFLINE, and recorded as a probe rather than as a support claim -- the same treatment batch B gave COPILOT and the CUBE* family and batch C gave DETECTLANGUAGE. Microsoft's IMAGE page documents the function as inserting an image "from a source location" given "The URL path, using an 'https' protocol, of the image file", and its own error vocabulary is made of network and policy outcomes rather than computed values: #CONNECT! "If there are issues with your internet connection or the server providing the source", and #BLOCKED! "If your security settings block access to the image file". The successful return value is not a value at all in the spreadsheet sense -- it is an image rendered in the cell -- so there is nothing a .xlsx round trip could read back and compare, and no offline engine could produce it. EXECUTED RESULT: probing all four LibreOffice builds (24.2.0.3, 24.8.7.2, 25.2.0.3, 25.8.7.3) with the plain name, the _xlfn. storage form and the COM.MICROSOFT. add-in form returned #NAME? for all three spellings on every build, which is the signature of a name the engine does not implement at all.

Error

Google Sheets (executed 2026-08-31 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
=IMAGE("https://example.com/example.png") Existence probe only: the documented single-argument form, recorded without an asserted expected value #REF!
Provenance

NOT REPRODUCIBLE OFFLINE, and recorded as a probe rather than as a support claim -- the same treatment batch B gave COPILOT and the CUBE* family and batch C gave DETECTLANGUAGE. Microsoft's IMAGE page documents the function as inserting an image "from a source location" given "The URL path, using an 'https' protocol, of the image file", and its own error vocabulary is made of network and policy outcomes rather than computed values: #CONNECT! "If there are issues with your internet connection or the server providing the source", and #BLOCKED! "If your security settings block access to the image file". The successful return value is not a value at all in the spreadsheet sense -- it is an image rendered in the cell -- so there is nothing a .xlsx round trip could read back and compare, and no offline engine could produce it. EXECUTED RESULT: probing all four LibreOffice builds (24.2.0.3, 24.8.7.2, 25.2.0.3, 25.8.7.3) with the plain name, the _xlfn. storage form and the COM.MICROSOFT. add-in form returned #NAME? for all three spellings on every build, which is the signature of a name the engine does not implement at all.

Error
=IMAGE("https://example.com/example.png","alt text",5) The documented #VALUE! branch for an out-of-range sizing argument, recorded as a probe #VALUE!
Provenance

Excel documents "Excel returns a #VALUE! error under the following circumstances: ... If sizing is not between 0 and 3", and 5 is outside the documented 0-3 range, so in Excel this is a deterministic, network-independent #VALUE!. It is nevertheless recorded WITHOUT an asserted expected value, because an engine that does not implement IMAGE at all cannot meaningfully be said to pass or fail an argument-validation branch of it, and a #NAME? here would otherwise be scored as a wrong answer to a question the engine was never asked. NOT REPRODUCIBLE OFFLINE, and recorded as a probe rather than as a support claim -- the same treatment batch B gave COPILOT and the CUBE* family and batch C gave DETECTLANGUAGE. Microsoft's IMAGE page documents the function as inserting an image "from a source location" given "The URL path, using an 'https' protocol, of the image file", and its own error vocabulary is made of network and policy outcomes rather than computed values: #CONNECT! "If there are issues with your internet connection or the server providing the source", and #BLOCKED! "If your security settings block access to the image file". The successful return value is not a value at all in the spreadsheet sense -- it is an image rendered in the cell -- so there is nothing a .xlsx round trip could read back and compare, and no offline engine could produce it. EXECUTED RESULT: probing all four LibreOffice builds (24.2.0.3, 24.8.7.2, 25.2.0.3, 25.8.7.3) with the plain name, the _xlfn. storage form and the COM.MICROSOFT. add-in form returned #NAME? for all three spellings on every build, which is the signature of a name the engine does not implement at all.

Error

LibreOffice Calc 25.8.7.3 (tested 2026-08-31)

FormulaDescriptionResultExpectedVerdict
=IMAGE("https://example.com/example.png") Existence probe only: the documented single-argument form, recorded without an asserted expected value #NAME?
Provenance

NOT REPRODUCIBLE OFFLINE, and recorded as a probe rather than as a support claim -- the same treatment batch B gave COPILOT and the CUBE* family and batch C gave DETECTLANGUAGE. Microsoft's IMAGE page documents the function as inserting an image "from a source location" given "The URL path, using an 'https' protocol, of the image file", and its own error vocabulary is made of network and policy outcomes rather than computed values: #CONNECT! "If there are issues with your internet connection or the server providing the source", and #BLOCKED! "If your security settings block access to the image file". The successful return value is not a value at all in the spreadsheet sense -- it is an image rendered in the cell -- so there is nothing a .xlsx round trip could read back and compare, and no offline engine could produce it. EXECUTED RESULT: probing all four LibreOffice builds (24.2.0.3, 24.8.7.2, 25.2.0.3, 25.8.7.3) with the plain name, the _xlfn. storage form and the COM.MICROSOFT. add-in form returned #NAME? for all three spellings on every build, which is the signature of a name the engine does not implement at all.

Error
=IMAGE("https://example.com/example.png","alt text",5) The documented #VALUE! branch for an out-of-range sizing argument, recorded as a probe #NAME?
Provenance

Excel documents "Excel returns a #VALUE! error under the following circumstances: ... If sizing is not between 0 and 3", and 5 is outside the documented 0-3 range, so in Excel this is a deterministic, network-independent #VALUE!. It is nevertheless recorded WITHOUT an asserted expected value, because an engine that does not implement IMAGE at all cannot meaningfully be said to pass or fail an argument-validation branch of it, and a #NAME? here would otherwise be scored as a wrong answer to a question the engine was never asked. NOT REPRODUCIBLE OFFLINE, and recorded as a probe rather than as a support claim -- the same treatment batch B gave COPILOT and the CUBE* family and batch C gave DETECTLANGUAGE. Microsoft's IMAGE page documents the function as inserting an image "from a source location" given "The URL path, using an 'https' protocol, of the image file", and its own error vocabulary is made of network and policy outcomes rather than computed values: #CONNECT! "If there are issues with your internet connection or the server providing the source", and #BLOCKED! "If your security settings block access to the image file". The successful return value is not a value at all in the spreadsheet sense -- it is an image rendered in the cell -- so there is nothing a .xlsx round trip could read back and compare, and no offline engine could produce it. EXECUTED RESULT: probing all four LibreOffice builds (24.2.0.3, 24.8.7.2, 25.2.0.3, 25.8.7.3) with the plain name, the _xlfn. storage form and the COM.MICROSOFT. add-in form returned #NAME? for all three spellings on every build, which is the signature of a name the engine does not implement at all.

Error

Docs & syntax