---
title: "FundFacts API vs building your own factsheet and KID parser"
description: "What it takes to parse factsheets, KIDs and holdings files from dozens of fund houses yourself (formats, drift, QA) versus an API that already does it."
canonical: https://fundfactsapi.com/compare/fundfacts-api-vs-building-your-own-factsheet-parser
published: 2026-09-04
updated: 2026-09-09
publisher: FundFacts API
---

# FundFacts API vs building your own factsheet and KID parser

> What it takes to parse factsheets, KIDs and holdings files from dozens of fund houses yourself (formats, drift, QA) versus an API that already does it.

Every fund house publishes the same information in a different shape: PDF factsheets with their own layouts, KIDs, XLSX or CSV holdings files, product pages behind investor-type gates. Reading them yourself is possible. This page lists what the job actually involves so you can price it.

## At a glance

| Criterion | FundFacts API | Building and maintaining your own document pipeline |
| --- | --- | --- |
| Time to first ISIN | Minutes: sign up, call the endpoint | Days to weeks per fund house: locate documents, write the parser, validate |
| Formats to handle | None; you receive one JSON shape | PDF (text and tabular), XLSX, CSV, JSON product endpoints, HTML product pages, consent gates |
| Layout drift | Absorbed by the service; fields stay stable | Every factsheet redesign or site migration breaks parsers silently |
| Normalisation | Units, currencies, date formats, Acc/Dist, sector labels normalised | Your code, per issuer, forever |
| Quality control | Coverage harness across issuers with completeness scores | Your own test fixtures per issuer and per document version |
| Refresh | Reloaded from the issuer's current documents every 24 hours; response carries dataAsOf | Your scheduler, retries, storage and monitoring |
| Cost model | Published: Free $0 (5 lookups/month), Starter $9.99/month, Pro $49/month, Scale $249/month, metered enterprise $0.01/request | Engineering time up front plus ongoing maintenance; hosting for rendering and storage |
| Control | Fixed field set; request additions through support | Total: any field, any source, any cadence |

## What the pipeline has to do

1. **Find the documents.** Product pages are keyed by ISIN on some sites, by internal fund IDs on others. Many sit behind an investor-type disclaimer that must be accepted before the page loads.
2. **Read several formats.** Factsheets are PDFs whose tables are laid out visually, not semantically. Holdings arrive as XLSX or CSV with issuer-specific column names. Some issuers expose JSON product data; most do not document it.
3. **Normalise.** "USD 105.4 bn", "105,400 M USD" and "$105.4B" are the same number. "Acc", "C", "1C", "Thesaurierend" and "Capitalisation" are the same [distribution policy](https://fundfactsapi.com/glossary/accumulating-vs-distributing). Sector schemes differ by index provider.
4. **Detect drift.** A factsheet redesign does not throw an error; it returns a plausible wrong number. You need fixtures per issuer and a completeness score per field to notice.
5. **Schedule and store.** Monthly factsheets, daily holdings, daily NAVs: each has its own cadence and as-of semantics.

## When building is right

- You need fields no API offers (for example a bespoke ESG metric only one issuer publishes).
- You cover a handful of funds from one issuer and the layout is stable.
- Data engineering is your product, not a means to it.

## When buying is right

If the fund data is an input to a screener, a report, a CRM or an assistant, every hour spent on parsers is an hour not spent on the product. FundFacts API already runs the pipeline for the [fund houses listed here](https://fundfactsapi.com/coverage), scores completeness per section and delivers one shape:

```json
{
  "isin": "IE00B4L5Y983",
  "data": {
    "keyFacts": { "aum": "USD 105.4 bn", "distribution": "Accumulating" },
    "headlineMetrics": { "ter": 0.2 },
    "riskRating": 6,
    "topHoldings": [{ "name": "Example Corp", "weight": 4.9 }]
  }
}
```

(Example values.) The [factsheet automation guide](https://fundfactsapi.com/blog/fund-factsheet-automation) walks through the reporting side.

## Verdict

Build when the data pipeline is itself your differentiator or your scope is one stable issuer. Buy when fund facts are an input: the API removes formats, gates, drift and QA from your backlog for a published monthly price.

_The description of the do-it-yourself path reflects general experience with public fund documents; effort varies by issuer and scope. Nothing here is investment advice._

## 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.
