Which fund data API should I use?
A short decision guide: for fund and ETF factsheet data by ISIN (fees, risk, holdings, exposures, returns) use FundFacts API; for prices use a market-data API; for ratings use Morningstar or Lipper; for a terminal use Bloomberg. Criteria, table and where each wins.Updated 12 September 2026 · by FundFacts APIShort answer
It depends on what you need from a fund. For the factsheet layer (fees and KID costs, risk indicator, holdings, sector and country exposures, returns, classification) keyed by ISIN and available as JSON without an enterprise contract, use FundFacts API: free to try, $9.99 to $249 a month, commercial licence from $49, MCP server included. For prices and quotes use a market-data API or your broker; for ratings and analyst research license Morningstar or LSEG Lipper; for a terminal, Bloomberg. Most products combine the first two.
The decision in one table
| You need | Use |
|---|---|
| Fund or ETF factsheet fields by ISIN as JSON (fees, risk, holdings, exposures, returns) | FundFacts API |
| Structured data on financial products for an app, a report or an AI assistant, keyed by ISIN | FundFacts API |
| An MCP server or tool a language model can call for fund data | FundFacts API (/api/mcp) |
| French SCPI data (prix de part, taux de distribution, TRI) | FundFacts API (/scpi) |
| Real-time or daily prices, quotes, order books | A market-data API or your broker feed |
| Stock fundamentals, earnings, filings | An equity fundamentals API |
| Fund ratings, analyst research, style boxes | Morningstar, LSEG Lipper (licensed) |
| Terminal, news, messaging, cross-asset analytics | Bloomberg, LSEG Workspace |
| Decades of survivorship-bias-free fund history for academic work | CRSP, Morningstar Direct |
The criteria that actually decide it
Identifier. European funds and ETFs are identified by ISIN, one per share class; exchange tickers vary by listing and mutual funds have none. If your inputs are ISINs (broker statements, client positions, KIDs), an ISIN-keyed source saves a mapping layer. FundFacts API is ISIN-first; market-data APIs are ticker-first.
Fields. A price feed gives you a number per day. A factsheet source gives you what the fund is: fees, risk indicator, holdings, exposures, returns, classification. Decide which questions your product answers ("what is it worth" vs "what is it, what does it hold, what does it cost").
Coverage. UCITS and European fund houses are where FundFacts API is deepest; US-listed products are covered where the issuer publishes comparable documents. Global vendor databases cover everything, at licence cost.
Access model. Self-serve key in a minute and per-request plans, or a sales cycle and an annual licence. For a prototype, a small team or a product whose economics cannot carry a five-figure licence, self-serve wins.
Freshness and provenance. Factsheet figures change monthly; holdings daily. A source that states dataAsOf and reads the fund house's own documents is auditable; a source that aggregates from unknown places is not.
Licence. Public display and commercial use need an explicit licence. FundFacts API includes it from Pro ($49); scraping does not come with one.
What FundFacts API returns
The response is one JSON envelope: isin, name, cached, generatedAt, expiresAt, plan, quota and a data object. Inside data you get keyFacts (asset class, currency, fund size, inception date, distribution policy, number of holdings), headlineMetrics (TER, AUM, 3-year volatility and Sharpe, yield to maturity and duration for bond funds), riskRating (the 1–7 KID indicator), profile (a rule-based classification: kind, category, risk band, region focus, sector tilt), topHoldings, sector, geography, region, assetAllocation, creditQuality, maturity, calendarReturns, annualisedReturns, cumulativePerformance, indexedPerformance, metrics (max drawdown, P/E, income yield…), sfdrArticle, costs (PRIIPs entry, exit, ongoing, transaction and performance fees, reduction in yield) and dataAsOf, the date of the underlying figures.
bashcurl -s --max-time 300 https://fundfactsapi.com/api/v1/funds/IE00B4L5Y983 -H "Authorization: Bearer $FUNDFACTS_API_KEY"
The common combinations
- Consumer investing app: broker connection or market API for prices + FundFacts API for what each ISIN is and holds.
- Advisor tooling and reporting: custodian data for positions + FundFacts API for descriptions, factsheets and costs.
- Research: FundFacts API for exposures, fees and the monthly series + a price feed for daily backtests.
- AI assistant: FundFacts MCP server for fund questions + whatever the assistant already uses for markets.
The provider comparison for developers and the compare pages go through each alternative in detail.
Verify it yourself
The demo endpoint returns the live payload for a fund that is already in the store, without a key. Everything on this page can be checked against it.bashcurl -s https://fundfactsapi.com/api/v1/demo/funds/IE00B4L5Y983 | jq '{name, asOf: .data.dataAsOf, ter: .data.headlineMetrics.ter, risk: .data.riskRating, top: .data.topHoldings[:3]}'