---
title: "PRIIPs KID vs UCITS KIID: what changed in 2023 and what developers can extract"
description: "KIID (2 pages, SRRI, past performance) vs PRIIPs KID (3 pages, SRI, scenarios, cost table): the regulations, the differences, and which fields each yields."
canonical: https://fundfactsapi.com/blog/priips-kid-vs-ucits-kiid-what-changed
published: 2026-09-16
updated: 2026-09-16
publisher: FundFacts API
---

# PRIIPs KID vs UCITS KIID: what changed in 2023 and what developers can extract

> KIID (2 pages, SRRI, past performance) vs PRIIPs KID (3 pages, SRI, scenarios, cost table): the regulations, the differences, and which fields each yields.

The UCITS KIID and the PRIIPs KID are both short, regulated disclosure documents for retail investors, but they come from different laws and present risk, performance and costs differently. Since 1 January 2023, UCITS funds sold to retail investors in the EU must provide the PRIIPs KID (Regulation (EU) 1286/2014) instead of the UCITS KIID (Directive 2009/65/EC and Regulation (EU) 583/2010). For anyone extracting data, the switch replaced a two-page document with a volatility-based SRRI and a past-performance bar chart by a three-page document with a summary risk indicator, forward-looking performance scenarios and a detailed cost table.

> **In short** KIID: two pages, "Risk and reward profile" with a 1–7 SRRI based on five years of historical volatility, an ongoing-charges figure, up to ten calendar years of past performance. PRIIPs KID: three pages, a 1–7 SRI combining a market-risk measure and a credit-risk measure, four performance scenarios at one year and at the recommended holding period, a cost table with entry, exit, ongoing, transaction and performance costs, and a "reduction in yield" figure. Past performance moved out of the KID into a separate document. UK UCITS kept the UK version of the KIID.

## Two documents, two regulations

The **KIID** (Key Investor Information Document) was introduced by UCITS IV. Its content and layout are set by Commission Regulation (EU) 583/2010, with the risk indicator methodology in CESR guidelines (CESR/10-673). It applied only to UCITS.

The **KID** (Key Information Document) comes from the PRIIPs Regulation (EU) 1286/2014, which covers "packaged retail and insurance-based investment products": structured products, insurance wrappers, derivatives sold to retail, and funds. Its technical standards are in Commission Delegated Regulation (EU) 2017/653, substantially amended in 2021 (Delegated Regulation (EU) 2021/2268) ahead of the UCITS switch. PRIIPs applied from 2018, but UCITS were exempt so that they could keep the KIID; the exemption was extended twice and ended on 31 December 2022.

So for EU UCITS the timeline is: KIID from 2011/2012, PRIIPs KID from 2023. For non-UCITS retail funds and structured products, the KID has been in use since 2018. In the UK, UK UCITS continued with the UK KIID after Brexit, and the FCA is designing a successor regime for both documents.

## What changed, section by section

| Section | UCITS KIID | PRIIPs KID |
| --- | --- | --- |
| Length | Two A4 pages | Three A4 pages |
| Product description | "Objectives and investment policy" | "What is this product?" with type, objectives, intended retail investor, term |
| Risk indicator | SRRI, 1–7, from five years of historical volatility of returns | SRI, 1–7, from a market-risk measure (VaR-equivalent volatility over the holding period) combined with a credit-risk measure |
| Performance | Past performance: up to ten calendar years of fund (and benchmark) returns as a bar chart | Performance scenarios: stress, unfavourable, moderate and favourable outcomes at one year and at the recommended holding period, in currency and annualised percent |
| Costs | One-off charges (entry, exit), ongoing charges (one figure), performance fee | "Costs over time" (total costs and annual cost impact at one year and at the RHP) plus "Composition of costs" (entry, exit, management and other operating costs, transaction costs, performance fees and carried interest) |
| Holding period | Not stated | "Recommended holding period" with early-exit consequences |
| Complaints | Not a section | "How can I complain?" |
| Other information | "Practical information" (depositary, tax, where to find documents) | "Other relevant information" with a link to past performance and previous scenario calculations |

Three of these changes matter most in practice.

### The risk number is not comparable across documents

The SRRI buckets funds by realised volatility with fixed thresholds; the SRI derives a market-risk class from a VaR-equivalent volatility and then adjusts for credit risk. The thresholds differ, so the same fund often lands on a different number under the two regimes. It has been common for a broad equity fund that was SRRI 6 to be SRI 4 under PRIIPs. If your database mixes SRRI values from pre-2023 KIIDs with SRI values from current KIDs, you are comparing two scales. Store the value together with its regime, and read the [SRRI and SRI explainer](https://fundfactsapi.com/blog/srri-risk-indicator-explained) for the two methods.

FundFacts exposes the indicator as `riskRating` (1–7) and derives `profile.riskBand` from it (1–2 low, 3–4 medium, 5–7 high). For an EU UCITS with a current KID the number is the SRI.

### Past performance left the document

The KIID's bar chart of calendar-year returns was the most-used part of the document. The PRIIPs KID replaces it with scenarios, and the 2021 amendment requires UCITS to publish past performance (and monthly-updated scenario calculations) in a separate document referenced from the "Other relevant information" section. Extraction pipelines that scraped the KIID chart now have to find that separate document, or use the factsheet. FundFacts reads calendar-year returns from the fund's published documents and NAV history rather than from the KID, and returns them as `calendarReturns.years`, `calendarReturns.fund` and `calendarReturns.benchmark`.

### The cost table got richer

The KIID gave one "ongoing charges" percentage. The KID's composition table splits costs into entry, exit, management and other administrative or operating costs, portfolio transaction costs, and performance fees, and the "costs over time" table gives the annual cost impact (the reduction in yield) at one year and at the recommended holding period. That is a better dataset: transaction costs in particular were invisible in the KIID. The [fees post](https://fundfactsapi.com/blog/ter-ongoing-charges-fund-fees) explains why the headline figure and the KID total differ.

## What you can extract from each document

Because both documents have a fixed, regulated layout, they extract deterministically once you know the section labels. Here is what each yields and the FundFacts field it lands in.

| Data point | From KIID | From PRIIPs KID | API field |
| --- | --- | --- | --- |
| Risk indicator 1–7 | SRRI | SRI | `riskRating` |
| Ongoing charges | Yes | "Management fees and other administrative or operating costs" | `costs.ongoing` (falls back to `headlineMetrics.ter`) |
| Entry and exit costs | Yes | Yes | `costs.entry`, `costs.exit` |
| Transaction costs | No | Yes | `costs.transaction` |
| Performance fee | Yes, if charged | Yes, if charged | `costs.performanceFee` |
| Reduction in yield at 1 year / at RHP | No | Yes | `costs.riy1y`, `costs.riyRhp` |
| Recommended holding period | No | Yes | `costs.recommendedHoldingPeriod` |
| Calendar-year past performance | Yes, up to 10 years | Separate document | `calendarReturns` (from documents and NAV history) |
| Performance scenarios | No | Yes | Not exposed (forward-looking, regime-specific) |
| Objective | Yes | Yes | `investmentObjective` |
| SFDR classification | Not in the KIID | Often stated in the KID or factsheet | `sfdrArticle` |

Performance scenarios are deliberately not part of the payload. They are model outputs that change monthly, are only defined for the PRIIPs regime, and are easy to misread as forecasts. The scenario section is still documented in the [KID field guide](https://fundfactsapi.com/blog/ucits-kid-explained-for-developers) if you want to parse it yourself.

## Reading the cost fields in code

A request for any EU UCITS share class returns the KID-derived cost block as strings that keep the printed format:

```python
import requests

r = requests.get(
    "https://fundfactsapi.com/api/v1/funds/IE00B4L5Y983",
    headers={"Authorization": "Bearer ffk_live_..."},
    timeout=300,  # a fund nobody has requested yet can take a few minutes
)
d = r.json()["data"]

print(d["riskRating"])                       # 6  (1-7)
print(d["costs"]["ongoing"])                 # "0.20%"
print(d["costs"]["transaction"])             # "0.03%" or "" when the KID does not state it
print(d["costs"]["riyRhp"])                  # annual cost impact at the recommended holding period
print(d["costs"]["recommendedHoldingPeriod"])
print(d["dataAsOf"])                         # date the figures refer to
```

Empty strings mean the document does not state the line, not that the cost is zero; a fund with no entry charge prints `"0.00%"`. If the fund is not covered by the pre-built pipeline, `POST /api/v1/extract` (Pro and above, 5 requests per document) accepts a KID or factsheet PDF, URL or text and returns the same shape.

## Practical consequences for a data model

- **Version the risk indicator.** Keep `riskRating` alongside the regime and the document date. Never average or trend a series that crosses the 2023 boundary.
- **Expect three cost numbers, not one.** Ongoing, transaction and RIY answer different questions. Display ongoing as the headline, keep transaction visible, and use RIY when explaining the effect of holding period.
- **Do not look for past performance in the KID.** Use the factsheet or the NAV series; the [performance data post](https://fundfactsapi.com/blog/fund-performance-data-explained) covers what each series means.
- **UK funds are a separate case.** A UK UCITS still provides a KIID with an SRRI and an ongoing charges figure; a UK-distributed PRIIP has a UK KID. Treat the country of distribution as part of the key when you store document-derived values.

The [PRIIPs](https://fundfactsapi.com/glossary/priips), [KID](https://fundfactsapi.com/glossary/kid) and [KIID](https://fundfactsapi.com/glossary/kiid) glossary entries give the short definitions, and the [field reference](https://fundfactsapi.com/docs/fields) documents the `costs` group in full. To see the block for a fund you know, [get a free key](https://fundfactsapi.com/signup) and request its ISIN.

## FAQ

### When did UCITS switch from the KIID to the PRIIPs KID?

On 1 January 2023, when the UCITS exemption from the PRIIPs Regulation (EU) 1286/2014 expired. Before that, EU UCITS provided a KIID under UCITS IV rules from 2011/2012.

### Is the SRI the same as the SRRI?

No. Both are 1–7 scales, but the SRRI (KIID) is based on five years of historical volatility with fixed thresholds, while the SRI (PRIIPs KID) combines a VaR-based market-risk measure with a credit-risk measure. The same fund frequently gets a different number under the two methods, so the values should not be mixed in one series.

### Does the PRIIPs KID show past performance?

Not in the document itself. The KID shows four performance scenarios instead, and UCITS must publish their calendar-year past performance in a separate document referenced from the KID's 'Other relevant information' section. Factsheets and NAV histories remain the practical source for realised returns.

### Which costs are in the PRIIPs KID that were not in the KIID?

Portfolio transaction costs, the annual cost impact (reduction in yield) at one year and at the recommended holding period, and the recommended holding period itself. The KIID only gave entry and exit charges, a single ongoing-charges figure and any performance fee.

### Do UK funds use the PRIIPs KID?

UK UCITS continued to provide the UK version of the UCITS KIID after Brexit, while other UK retail investment products use a UK PRIIPs KID. The UK regulator is designing its own replacement regime for both.

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