xlwings Lite vs. Anaconda Code¶
Both xlwings Lite and Anaconda Code use Pyodide, the Python distribution for WebAssembly. Anaconda Code is part of the “Anaconda Toolbox for Microsoft Excel”.
Company¶
Anaconda Code is a product of Anaconda, Inc. It’s Anaconda’s third attempt in the Python/Excel space. Their first attempt was called “Anaconda Fusion”, came out in 2016, and was killed again shortly after. Their second attempt is Python in Excel in an official partnership with Microsoft. Finally, in 2024, their own incarnation of Python in Excel came out under the name “Anaconda Code”.
xlwings Lite is based on the popular Open Source package xlwings, which has been around since 2014 and which is developed by Zoomer Analytics GmbH, a company that focuses entirely on the combination of Python and Excel, see About.
Privacy¶
While Anaconda Code runs Python locally, it requires a login. Every single action (e.g., calculation of a user-defined function or running a code cell) sends out data to https://heapanalytics.com, a 3rd party analytics platform.
xlwings Lite runs entirely on the end-user’s machine without sending any data out. The only exception is Microsoft’s mandatory telemetry, which you can eliminate through self-hosting.
Self-hosting¶
There is no information available as to whether Anaconda Code can be self-hosted.
xlwings Lite can be self-hosted against a fee, see Pricing.
Registration / Login¶
Anaconda Code requires the creation of an Anaconda account and editing Python code requires to be logged in.
xlwings Lite requires no registration and no login.
Custom functions (a.k.a. User-defined functions UDFs)¶
Anaconda Code’s user-defined functions are offering a basic way to create user-defined functions.
xlwings Lite offers support for advanced custom functions including volatile functions and converters that can be applied via type hints or decorators. Streaming functions and object handles are planned, see Roadmap.
Pyodide version¶
As of March 20, 2025, Anaconda Code is using Pyodide 0.26.2, which is 8 months old.
As of March 20, 2025, xlwings Lite is using the latest version of Pyodide.
Pricing¶
Anaconda Code is still in beta and hasn’t communicated pricing yet. Currently, Anaconda Code can be used with a free Anaconda Cloud account. However, the add-in states that “Additional purchase may be required”. While the add-in description links to https://anaconda.com/pricing, no information about Anaconda Code pricing can be found on that page.
xlwings Lite is free via add-in store for both personal and commercial usage. There is a fee for self-hosting, see Pricing.
Complexity¶
Anaconda Code requires you to select whether a script runs in “isolated mode” or not and whether it returns “Excel values” or a “Python object”. Furthermore, you need to decide whether to write Python code into a cell or into the “Imports and Definitions” file.
xlwings Lite doesn’t introduce any new concepts. The code is written as a standard Python module and behaves like a standard Python module.
Excel object model¶
Anaconda Code can’t manipulate the Excel object model. This means, e.g., that you can’t add a new sheet or format the output as an Excel table.
xlwings Lite gives you access to the Excel object model, so you can add new sheets and format the output as an Excel table, etc.
WebAssembly limitations¶
If you hit a limitation of WebAssembly, e.g., you need a direct database connection, or you need to use a currently unsupported packages like PyTorch, Anaconda Code doesn’t have a solution for you.
xlwings Lite allows you to migrate to the local version of xlwings or xlwings Server without code changes. These solutions offer a full Python installation locally or on a server, where you don’t face any of the WebAssembly restrictions.
Editor¶
Anaconda Code uses CodeMirror.
xlwings Lite uses the same editor as VS Code, allowing you to reuse many of the same keyboard shortcuts. xlwings Lite also has better code completion.
Maximum script length¶
Anaconda Code stores your Python code in Excel cells, which allows you to save a maximum of a little over 8000 characters per cell. This means that you need to break up long scripts into various cells.
xlwings Lite doesn’t have a limitation on script length.