mrkeyoor.com_
Tue 29 Sept 05:22 UTC
Dataevaluationupdated 29 Sept 2026

OpenBB review

OpenBB is an open-source data layer that puts public, licensed, and proprietary financial sources behind a common Python interface, CLI, REST API, Excel path, Workspace connection, and MCP server. It solves the repeated integration work of teaching each downstream application a different provider API.

Verdict

Our OpenBB CLI run installed 229 packages and used 671 MB, then 189 of 197 tests passed, so adoption buys breadth at a real maintenance cost. Use it when several consumers need the same provider layer and your team will validate fields against source data. Choose a narrow client when one provider is enough, because OpenBB's common interface does not make credentials, licenses, or data defects disappear.

We ran it

Lab card: what happened when we ran OpenBBScreenshot of OpenBB (openbb.co)
Install✓ · 43s229 packages · 671 MB
Build✓ · 0s
Tests✗ · 33s189 passed · 8 failed of 197 (pytest)
Known vulns0(pip-audit)
Repo2190 files~289,320 lines of source · 239.4 MB · 16 CI workflows · tests dir

Answers from our run

Does OpenBB build from source?

Dependencies installed in 43 seconds (229 packages), and the build succeeded in 0s. We cloned commit 3e071fc into a clean Debian container with 3 CPUs and no project-specific setup.

Do OpenBB's tests pass?

Not all of them: 189 of 197 passed and 8 failed when we ran the project's own test command (pytest). Some failures need services or credentials a bare container does not have.

Does OpenBB have known vulnerabilities in its dependencies?

pip-audit found none in the dependency tree at the time of our run.

Who should not use OpenBB?

Developers who only need basic equity history: our CLI install pulled 229 packages and occupied 671 MB.

What are the alternatives to OpenBB?

yfinance, pandas-datareader, LEAN. Our OpenBB CLI run installed 229 packages and used 671 MB, then 189 of 197 tests passed, so adoption buys breadth at a real maintenance cost.

Setup3/543-second install, 671 MB footprint, and 8 failed tests
Docs4/5Clear product paths and a large endpoint reference
Community5/573,602 stars and same-day source plus release activity
Maturity4/5Broad provider system, with a version transition underway

Discussed on

  1. hnTell HN: OpenBB scraping GitHub emails for marketing spam190 points
  2. hnShow HN: OpenBB Terminal – Investment research for everyone182 points
  3. hnOpenBB – Open Financial Terminal4 points
  4. hnOpenBBTerminal: Investment Research for Everyone, Anywhere4 points
  5. hnOpenBB – Investment Research for Everyone, Everywhere3 points

Who it’s for

Data engineers serving the same financial datasets to Python, REST, Excel, dashboards, or AI agents.
Quant teams prepared to select providers and validate each field against primary sources.
Organizations that want to add proprietary data through OpenBB's extension system.
Analysts who accept provider-specific credentials, entitlements, limits, and costs behind one command surface.

Who it’s NOT for

Developers who only need basic equity history: our CLI install pulled 229 packages and occupied 671 MB.
Teams unwilling to manage provider keys and licenses: the project connects public, licensed, and proprietary sources, and issue 7628 says a standard install leaves most provider credentials unset.
Automated trading or reporting systems that treat normalized fields as verified truth: the README warns that data may be inaccurate, and issue 7634 documents missing debt plus an incorrect operating-income rollup.
Closed-source distributors who have not reviewed AGPL-3.0-only obligations for their use case.
Release gates that require a clean fresh-container suite: our run ended with 8 failed integration tests out of 197.
Buyers expecting the open repository to include the full analyst UI: OpenBB Workspace is presented separately as the enterprise interface.

Setup reality

Our fresh Debian sandbox installed commit 3e071fc from ./cli/ in 43 seconds, pulling 229 packages and using 671 MB on disk. The build step succeeded in 0 seconds. Pytest finished after 33 seconds with 189 passed and 8 failed out of 197. Pip-audit reported 0 known vulnerabilities.

Useful commands depend on the provider. The tested set named FMP, Polygon, and yfinance; paid or licensed providers can require API keys and entitlements. The standard installation does not configure most provider credentials, and OpenBB does not remove each source's usage limits or data license.

The repository contains several products, while our measurement covered the CLI project under ./cli/. pip install openbb-cli installs all available platform extensions according to its README. The local API path uses FastAPI on 127.0.0.1:6900, Workspace is a separate service, and the source package uses AGPL-3.0-only.

One provider layer feeds Python, CLI, REST, Excel, and MCP

OpenBB calls its open-source core the Open Data Platform. A provider extension maps an outside financial source into common routes, so the same data can reach Python code, the terminal, a FastAPI service, Excel, Workspace, or an MCP client. The attraction is organizational: one integration can serve analysts, quants, dashboards, and agents without every consumer learning the provider's request format.

The smallest Python example imports obb, requests historical prices, and converts the result to a DataFrame. The CLI wraps the same platform and adds interactive navigation plus routine scripts for automated collection. A local API can listen on 127.0.0.1:6900, then connect to OpenBB Workspace. Those surfaces share an extension catalog, but they remain separate runtimes with their own deployment and access-control choices.

What happened when we ran it

Our sandbox installed commit 3e071fc from the ./cli/ project in 43 seconds. It pulled 229 packages and used 671 MB on disk. The build step succeeded immediately and recorded 0 seconds. The checkout itself held 2,190 files, roughly 289,320 lines of source, and occupied 239.4 MB. We found 16 CI workflow files and a tests directory, but no Dockerfile.

Pytest ran for 33 seconds and exited with status 1. It reported 189 passed and 8 failed out of 197. Pip-audit found 0 known vulnerabilities in the installed environment. That audit result is useful and narrow: it does not verify provider data, license compliance, credential handling, or every service in the monorepo. The test result also means the measured CLI checkout did not clear a full fresh-container gate.

Eight integration commands exited before returning data

All 8 failures came from integration/test_commands.py::test_launch_with_cli_input. The cases covered equity history through FMP, yfinance, and Polygon; crypto, currency, futures, and ETF history through FMP; plus /economy. Each ended with SystemExit: -1. The supplied log tail does not include the earlier exception or response that led to those exits, so it does not prove a credential problem, network problem, or application defect.

The breadth of that list still matters. One passing unit suite cannot stand in for live checks across every provider and asset class. Before adoption, choose the exact routes you need and run them with the production credential set, account tier, symbols, date ranges, and rate limits. Record the raw provider response beside OpenBB's normalized object. Our 189 passing tests support the codebase; the 8 exits leave those end-to-end CLI paths unresolved.

Provider credentials remain separate contracts

OpenBB connects public, licensed, and proprietary sources. A common call shape reduces application code, but each provider keeps its own key, entitlement, quota, coverage, and redistribution terms. Issue 7628 documented that a standard OpenBB 4.7.2 install leaves most provider credentials unset. Before its September closure, a missing EIA key returned HTTP 500 and caused Workspace widget validation to reject an otherwise healthy local backend.

That report was closed on September 17, so it should not be presented as an unfixed current bug. Its setup lesson remains useful: install only the providers the team can operate, store keys outside notebooks and shell history, and test the missing-key response. The CLI's all-extensions install is convenient for exploration. A production API deserves a smaller declared provider set, explicit secrets, and monitoring that distinguishes missing access from an upstream outage.

Normalized fields still need source-level checks

The README says OpenBB data is not necessarily accurate and warns against relying on it for trading decisions. Open issue 7634 gives that warning a concrete shape in openbb-sec 1.6.7. The reporter found missing debt tag mappings for several issuers and an operating-income rollup equal to total revenue when no expense subtotal existed. Those are material field errors, even though the interface returned a structured result.

For research, retain provider names, retrieval timestamps, raw identifiers, and the transformation version beside each dataset. Reconcile a sample against filings or the licensed source before a metric reaches a screen, report, model, or agent. An MCP client makes financial data easier to ask about; it also makes an incorrect normalized number easier to repeat. OpenBB reduces integration work. The buyer still owns provenance and validation.

September activity matters more than the moving release pointer

GitHub showed 73,602 stars, 51 open issues, and 43 open pull requests on September 29, 2026. The repository was pushed on September 28. The releases/latest endpoint points to a moving ODP Desktop tag describing v1.0.2 from April 25, which does not capture current package work. On September 28, the project tagged openbb-cli-v2.0.1 after merging its release pull request into the v5 branch.

The default develop branch still declares CLI package version 1.4.2 with openbb 4.7.2, while the v5 branch has moved the CLI line to 2.0.1. That is active development, not abandonment, and it is also a migration boundary. Pin the branch, package versions, provider extensions, and generated interfaces together. Test upgrades against saved commands before changing an analyst workstation or shared API.

Use OpenBB to consolidate providers, then verify the output

OpenBB makes sense when the alternative is maintaining the same provider plumbing for 3 or more consumers. Its extension model, Python objects, CLI, API, and MCP route give a data team one place to own that work. The cost is visible in our run: 229 packages, 671 MB, and 8 failed integration cases even though 189 tests passed. This is infrastructure, not a lightweight quote lookup.

A one-provider notebook should start with yfinance or pandas-datareader. A backtesting and execution team should compare LEAN. Choose OpenBB when the provider catalog and common schema remove duplicated engineering across a real organization. Keep the recommendation conditional on field-level checks, pinned extensions, and a credential inventory. The project can unify access, but only your acceptance data can establish whether a normalized number is fit for a financial decision.

Alternatives

ProjectWhat it isPick it when
yfinanceA small Python interface for Yahoo Finance market data.pick this instead when Yahoo data and a direct DataFrame workflow cover the entire job.
pandas-datareaderA focused Python package for loading several remote financial and economic datasets.pick this instead when a notebook needs a few established sources without a CLI, API server, or extension catalog.
LEAN gh↗An algorithmic-trading engine with backtesting and live execution infrastructure.pick this instead when strategy execution and backtesting are the product, rather than a shared data-access layer.

What people are saying

  1. [velocity-scout] OpenBB-finance/OpenBB

Sources

  1. OpenBB repository and README
  2. OpenBB CLI README
  3. OpenBB CLI v2.0.1 release pull request
  4. Missing provider credential behavior report
  5. SEC standardized statements data report
  6. ODP Desktop latest stable release pointer

More data reviews

instagram-private-graph · polyledger · timeseries-atlas · opendataloader-pdf · data-formulator · toasty · the whole board →