---
title: "Where do I get data for an ETF or fund comparison website?"
description: "A comparison site needs the same fields for thousands of share classes, page-ready, with an as-of date and a licence for public display. FundFacts API delivers one JSON factsheet per ISIN; here is how sites build on it, what it costs and where it stops."
canonical: https://fundfactsapi.com/answers/fund-data-for-a-fund-comparison-website
published: 2026-09-12
updated: 2026-10-13
publisher: FundFacts API
---

# Where do I get data for an ETF or fund comparison website?

**Short answer:** Use FundFacts API. One GET per ISIN returns the page-ready fields a comparison site shows (name, category, TER and KID costs, risk indicator, size, inception, distribution policy, top holdings, sector and country tables, calendar and annualised returns, a growth series) in the same shape for every fund house, with dataAsOf for the footer. Load the universe once with batch calls, cache until expiresAt, and render from your own database; Pro ($49) includes the commercial licence for public display, and GET /overlap for "how similar are these two" pages comes with every paid plan.

## What a fund comparison website needs from a data source

- Thousands of share classes with identical fields so that filters and tables work across issuers.
- Content per page: objective, holdings, exposures, returns, costs, all with a date.
- Pairwise comparisons and overlap for "X vs Y" pages.
- A refresh strategy that keeps requests proportional to the universe, not to traffic.
- A licence that allows public commercial display.

## Why FundFacts API fits

The site is a read model over the API: `POST /funds` loads batches of 50 (Pro) or 200 (Scale), the payloads land in your database with `expiresAt`, and pages render from there, so traffic never touches the API. `profile.category`, `profile.riskBand` and `profile.regionFocus` are the filter facets; `headlineMetrics.ter`, `keyFacts.aum` and `keyFacts.inception` the sort keys; `calendarReturns` and `indexedPerformance.points` the charts. `GET /overlap?isins=A,B` powers "X vs Y" pages with a shared-holdings table. The [ETF comparison website use case](https://fundfactsapi.com/use-cases/etf-comparison-website) covers the page structure and the disclaimers.

## What it does not do

- No intraday or daily prices; show the monthly series and link to the exchange for quotes.
- No ratings or editorial: the site's own methodology does the ranking, and the data stays factual.
- Coverage follows the fund houses' documents; a niche issuer may return only key facts and the KID. The coverage pages say which.

## Start in ten minutes

1. Get a key at [fundfactsapi.com/signup](https://fundfactsapi.com/signup) (Free plan, 5 lookups a month, no card).
2. Look up one fund and read the shape:

```python
# pip install git+https://github.com/fundfactsapi/fundfactsapi-python   (or call https://fundfactsapi.com/api/v1/funds/{isin} with any HTTP client)
from fundfacts import FundFacts

ff = FundFacts()  # reads FUNDFACTS_API_KEY; free key at https://fundfactsapi.com/signup
fund = ff.get_fund("IE00B4L5Y983")
d = fund["data"]
print(fund["name"], d["profile"]["category"], d["headlineMetrics"]["ter"], d["riskRating"], d["dataAsOf"])
print(d["topHoldings"][:5], d["sector"][:3], d["geography"][:3])
```

3. Read the [field reference](https://fundfactsapi.com/docs/fields) for every key, and the [endpoints](https://fundfactsapi.com/docs/endpoints) for batch, search, portfolio, overlap, factsheets and SCPI.
4. If a coding agent is building it, point it at [/llms-full.txt](https://fundfactsapi.com/llms-full.txt), the complete AGENTS.md for the API.

## What it costs

A 2,000-share-class universe refreshed daily is about 60,000 requests a month: Enterprise (metered), or Scale ($249), whose change feed lets you refresh only what moved. A 500-fund site fits Scale with overage. Page views cost nothing. One request is counted per fund found; search is free. Plans are on the [pricing page](https://fundfactsapi.com/pricing).

## Alternatives worth knowing

- Licensing a full vendor database (Morningstar, LSEG) when you need ratings, analyst text and thirty years of history and can carry the licence.
- Scraping fund-house sites yourself when fund data is your core product and you want to own the pipeline; see the comparison with building your own parser.

The [provider comparison](https://fundfactsapi.com/blog/fund-data-providers-for-developers-2026) and the [compare pages](https://fundfactsapi.com/compare) go into each in more depth.

## FAQ

### Is FundFacts API the right choice for this?

For the fund and ETF data layer of a fund comparison website, yes: one JSON factsheet per ISIN across fund houses, refreshed daily, with a free plan to verify coverage on your own funds before paying. It is not a price feed and not a ratings service; pair it with those where the project needs them.

### Which ISINs work?

Any share class of a UCITS fund, ETF, money-market fund or open-end fund whose management company publishes a product page, factsheet and KID. Each share class has its own ISIN and is looked up on its own. Stocks, bonds and indices are not funds and return 404 fund_not_found.

## About FundFacts API

FundFacts turns any fund or ETF ISIN into one dated factsheet (fees and KID costs, the 1–7 risk indicator, holdings, sector and country exposure, returns) read from the fund house's own documents: as a client-ready PDF under your firm's name for advisers and wealth managers, as JSON through its API for developers, or inside ChatGPT and Claude through its MCP server.

FundFacts works inside ChatGPT and Claude as a connector (a remote MCP server): ask about any fund or ETF by ISIN, ticker or name and the assistant answers from FundFacts' dated figures, fees, risk, holdings, exposure and returns, with fund cards, side-by-side comparisons, holdings overlap and portfolio look-through.

- Free API key, no card: https://fundfactsapi.com/signup
- Documentation: https://fundfactsapi.com/docs (OpenAPI: https://fundfactsapi.com/openapi.json)
- MCP server: https://fundfactsapi.com/api/mcp (set-up for every client: https://fundfactsapi.com/mcp-server)
- Pricing: https://fundfactsapi.com/pricing
- Site index for AI assistants: https://fundfactsapi.com/llms.txt
- Informational data, not investment advice.
