Build a portfolio data dictionary, test framework mappings and keep definitions, evidence and reporting versions consistent across investees.
By Sopact · Updated September 12, 2026
Map portfolio and investee data to IRIS+, GRI, or ESRS by comparing definitions, not matching metric names. Start with one governed data dictionary that records each field's population, unit, reporting period, boundary, calculation method, and disaggregation. Then classify each mapping as an exact match, a related-but-modified relationship, or an organization-specific measure. A single source field may support more than one framework disclosure — but only when each framework's requirements are met and any differences are documented. Use AI to generate candidate mappings, and have a qualified person validate every one against the current official standard before it reaches investor, regulatory, or assurance-ready reporting.
Continue from the portfolio onboarding lesson. Bring one approved reporting agreement and three measures from your portfolio. Leave with a small mapping register that states what can be combined, what must stay separate and who approved the decision.
CSRD is not a separate metric standard. It is the EU's Corporate Sustainability Reporting Directive, under which organizations in scope report using ESRS — the European Sustainability Reporting Standards drafted by EFRAG and adopted by the European Commission (European Commission). So the frameworks you actually map metrics to are IRIS+, GRI, and ESRS; CSRD is the regime that makes ESRS mandatory for companies within the applicable CSRD scope.
This chapter is for a portfolio or impact manager at a fund, foundation, or DFI who receives data from many investees or grantees, has to make it comparable, and must report it into the frameworks LPs and regulators expect — and it rests on one principle worth stating before the process rather than after it: a shared label is not a shared definition, so two investees can each report 40 jobs created under different rules. Adding those figures hides differences in what was counted.
A short Sopact explainer introducing a shared data dictionary. Use the definition checks in this lesson before approving any framework mapping.
Standards mapping is not just code-matching — for ESRS it begins with scope and materiality. Work in this order; the later sections explain the steps that need judgment. If your organization does not yet have stable field definitions, begin with how to build a shared data dictionary before attempting standards mapping.
They are not four peer metric catalogs, and they should not be treated as interchangeable code lists.
| Name | What it is | You map metrics to it? |
|---|---|---|
| IRIS+ | GIIN's impact measurement & management system, with a catalog of standardized metrics | Yes — metric codes |
| GRI | Sustainability reporting standards organized around disclosures | Yes — disclosures |
| ESRS | Mandatory EU sustainability reporting standards (EFRAG-drafted, EC-adopted) | Yes — disclosure requirements & applicable datapoints |
| CSRD | EU directive establishing reporting obligations; in-scope companies report under ESRS | No — it's the regime, not a metric set |
For each candidate relationship, use three working categories to describe the match. Keep incomplete comparisons marked as pending rather than forcing a category. This is a Sopact governance method for documenting how closely a field corresponds to an external standard — not an official classification issued by GIIN, GRI, or EFRAG. Sopact's branded shorthand for the three is Direct / Adapted / Complementary.
The value of the test is honesty: a reader can see instantly which figures carry a standard code on identical terms, which are related-but-modified and need a caveat, and which are your own definition — so nothing is quietly presented as standards-compliant when it is an adaptation.
Here is an illustrative workforce-development dictionary mapped to selected IRIS+ metrics, each tagged candidate exact, Related, or Organization-specific. They are "candidate" because an internal label alone does not prove exact equivalence — confirm each against the complete IRIS+ version 5.2 definition, unit, calculation, and reporting period before approving it as Exact.
| Dictionary field | IRIS+ metric & code (v5.2) | Class | Verify before approving |
|---|---|---|---|
| Total Clients Enrolled | Client Individuals: Total — PI4060 | Candidate exact | "Enrolled" vs "served during the period" — same population? |
| Female Trainees | Client Individuals: Female — PI8330 | Candidate exact | Gender definition & period match |
| Job Placement Rate | Job Placement Rate — PI3527 | Candidate exact | Numerator, denominator, start-of-work, period |
| Training Hours Delivered | Employee Training Hours — OI7877 | Related | Employee hours and external trainee hours describe different populations. Keep them separate; a footnote does not make them equivalent. |
| Credential Attained | Operational Certifications — OI1120 | Not a suitable mapping | OI1120 describes certifications held by the organization, not qualifications attained by participants. Keep the participant measure separate; do not use this code for it. |
| Training Completion Status | — (derive completed ÷ enrolled) | Org-specific | No match approved in this example; define completion and the denominator, then report a program-specific ratio |
Illustrative dictionary; fields are for demonstration. IRIS+ codes are real GIIN metrics linked to IRIS+ version 5.2; the Exact/Related/Org-specific tags are the Sopact classification above, not a GIIN designation. A candidate exact mapping becomes approved as Exact only after the internal field definition is verified against the complete current IRIS+ definition, unit, calculation, and reporting period.
A single label — "training hours," "diversity," "employment" — often maps to a different population in each framework. The rows below are failed or partial crosswalk candidates, not one source value reporting cleanly across three frameworks — each with the match quality and the caveat that keeps it honest. This teaching example uses IRIS+ v5.2 and the 2023 ESRS disclosure numbering reflected in the GRI–ESRS Interoperability Index (Nov 2024); confirm complete definitions and the applicable edition before relying on any mapping. The table is not a crosswalk for the revised 2026 ESRS.
| Field | IRIS+ | GRI | ESRS disclosure requirement | Match quality | Caveat |
|---|---|---|---|---|---|
| Training hours | Employee Training Hours OI7877 |
404-1 avg training hrs / employee | S1-13 (training & skills development) | Partial | All three concern employee training; applying to program trainees changes the population. |
| Gender diversity | Client Individuals: Female PI8330 |
405-1 diversity of employees | S1-6 / S1-9 | Partial | GRI/ESRS cover own workforce & governance; IRIS+ counts served clients. Different population and disaggregation. |
| Employment | Job Placement Rate PI3527 |
2-7 Employees | S1-6 | Low | IRIS+ measures beneficiaries placed into jobs; GRI/ESRS measure the reporting entity's own headcount. Same word, different subject. |
Read it: none of these is a clean 1:1. The training row concerns employees in all three references, but still requires checking totals versus averages and disaggregation. The other rows compare client measures with own-workforce disclosures. Check each row separately; IRIS+ includes both client and organizational measures. The portfolio dictionary can govern both populations, but it should not collapse them into one field. Record one governed source value, document the transformations and framework-specific caveats separately, and remember: that is the difference between a metric match and reporting compliance.
Sometimes — but not automatically. One governed data field may support multiple framework disclosures when its definition, boundary, period, unit, and required disaggregation satisfy each framework. Where those requirements differ, keep one source value but document the transformations, supplementary fields, and disclosure-specific caveats separately.
A shared value can reduce duplicate data entry, but it does not by itself make a figure compliant with each standard. Differences that commonly break a naive one-to-many mapping include entity and value-chain boundaries, reporting period, definitions of employees vs. clients vs. beneficiaries, required disaggregation, units and calculation methodology, materiality, and the narrative and methodology disclosures each framework expects. And note: a field's similarity to an ESRS datapoint does not determine whether the corresponding sustainability matter is material, or whether the disclosure is required at all.
A Sopact walkthrough of impact reporting frameworks. Treat the interface as a demonstration, and check the standard edition separately.
Use the three-organization portfolio from the earlier lessons. The figures below are fictional. All three partners report “placements,” but their agreements use different definitions.
| Partner | Submission | Definition in the agreement | Decision before aggregation |
|---|---|---|---|
| A | 40 placements | People who began work during the quarter | Check unique people, evidence, job types and reporting dates. |
| B | 40 placements | People who accepted an offer; some have not started | Request the count who actually started. Do not add all offers to A’s starts. |
| C | 40 placements | People employed six months after completing training | Keep this as a follow-up outcome. It measures a different point in the journey. |
Your task: write one dictionary entry for job starts and a separate entry for six-month employment. Compare the job-start definition with the dated IRIS+ PI3527 definition. Record the population, period, numerator, denominator and supporting evidence. A placement rate cannot be calculated from the placement count alone.
Check your answer: 120 is not an approved portfolio total. B requires clarification and C answers a different question. A is a candidate for the starts measure, not automatically a verified standard match. Keep unresolved values visible rather than replacing them with zero.
| Field to save | Example or decision |
|---|---|
| Internal metric and version | Job starts, version 1; effective for the agreed reporting period |
| Source and standard edition | Agreement, submission and evidence references; exact standard URL and version |
| Comparison result | Population, unit, boundary, period, formula and disaggregation checked separately |
| Mapping status and unresolved questions | Candidate, approved, rejected or needs clarification; explain why |
| Owner and review history | Named reviewer, approval date and reason for any later change |
Test the dictionary against the next quarterly submission. If a partner changes its definition, retain the prior version and decide whether earlier figures need restatement. Do not quietly rewrite historical results.
Use semantic mapping to generate candidate relationships between dictionary fields and standard disclosures — then validate the definition, scope, unit, period, calculation method, disaggregation, and framework version before approving any mapping. Semantic similarity cannot establish compliance; two labels can sound alike while using different populations, units, or boundaries.
You are a standards-mapping assistant for a portfolio manager. Generate CANDIDATE mappings only — a human validates before use. For each metric in my data dictionary below, propose a mapping to [IRIS+ / GRI / ESRS] and classify it: - EXACT — same population, unit, period, calculation. Return the metric name + code. - RELATED / MODIFIED — a related standard metric exists but subject/population/ boundary/calculation differs. Return the code AND the difference a reader needs. - ORGANIZATION-SPECIFIC — no suitable mapping has been established. Explain the search scope; do not claim the entire catalog has been exhausted. - UNMAPPABLE — no plausible relationship. - UNVERIFIED CANDIDATE — a plausible match, but a required comparison attribute is missing from either definition. Use this instead of forcing uncertainty into EXACT. RULES - Never fabricate a code. Cite the official source URL and framework version for every proposed code. - Do NOT classify a mapping as EXACT unless every required comparison attribute (population, unit, period, boundary, calculation, disaggregation) is explicitly available in BOTH the internal definition and the standard definition. If either is incomplete, classify it UNVERIFIED CANDIDATE. - Flag any field too ambiguous to map and say which definition detail is missing. INPUT (field · definition · population · unit · period · disaggregation): <<< [paste here] >>> OUTPUT (one HTML-ready table): Field | Framework metric & code (+ source/version) | Class | Population/unit/period match? | Verification needed.
You can build the dictionary and draft mappings in any capable tool. At portfolio scale, a key challenge is continuity — one shared dictionary across dozens of investees, re-run each cycle, with every rolled-up number traceable to its source field and standard reference. When evaluating Sopact for this workflow, test the collection, document analysis and linked reporting records against your own agreements. Confirm how version history, approvals and framework-specific views will be configured; do not assume a connector or an automatic compliance check.
| Governance need | Workflow to configure and test | Human responsibility |
|---|---|---|
| Govern definitions | Shared portfolio dictionary | Approve definitions |
| Find possible mappings | AI-assisted candidate review against supplied standard definitions | Validate correspondence |
| Track frameworks | Versioned mapping records | Approve updates |
| Collect comparable data | Dictionary-driven forms | Resolve exceptions |
| Roll up results | Traceable aggregation | Interpret and disclose |
| Produce reports | Framework-specific views | Confirm reporting compliance |
Standards mapping supports reporting preparation; it does not by itself establish legal or assurance compliance. ESRS reporting also involves materiality, policies, actions, targets, narrative disclosures, reporting boundaries, governance, digital tagging, and assurance requirements.
A Sopact explainer on the context that makes reporting useful to its audience.
Compare definitions, not labels. Define each metric once in a governed dictionary (population, unit, period, boundary, calculation, disaggregation), classify each mapping Exact / Related / Organization-specific, document the differences, and validate every mapping against the current official standard before use. AI can generate candidate mappings; a qualified person approves them.
CSRD is the EU directive that establishes who must report sustainability information; ESRS are the standards those in-scope organizations report against, drafted by EFRAG and adopted by the European Commission. You map metrics to ESRS; CSRD is the legal regime, not a metric catalog.
A mapping records how an internal field relates to a standard metric. Even an exact metric match does not establish reporting compliance: applicable boundaries, materiality, narrative disclosures and other requirements still need review. A shared value can support several disclosures, but only when each framework's requirements are met and the differences are documented.
Because the same word can measure a different population. IRIS+ v5.2 OI7877, GRI 404-1, and the 2023 ESRS S1-13 reference all concern employee training in their standard contexts, but an impact program may be collecting training hours for external trainees or beneficiaries. Applying those employee measures to program participants changes the population, so it should be classified as related — not equivalent — and not reported as the standard metric.
Sometimes they may support value-chain or affected-community analysis, but beneficiary metrics do not automatically satisfy ESRS disclosures about the reporting entity's own workforce. First determine the relevant ESRS topic, reporting boundary, affected stakeholder group, materiality, and disclosure requirement. Keep client, beneficiary, employee, worker, and community populations explicitly separated in the data dictionary.
Record the framework and version behind every mapping, keep versioned mapping records, and re-validate when a standard is revised and distinguish a newly adopted version from the version legally applicable to the reporting period. State the versions used in your report so a reviewer can trace which edition each disclosure was mapped against.
Treat it as candidate mappings, not a filing. A capable model proposes codes and caveats quickly, but a qualified person must validate each against the current standard before it reaches an LP, regulator, or assurance provider. AI can help prepare comparisons; its proposed mappings still require review.
Technical references reviewed September 12, 2026. The examples are instructional; verify the applicable standard and reporting requirements before using a mapping.
Take your approved definitions into the next lesson: frame outcomes at portfolio level. Decide which shared questions the portfolio can answer while keeping each organization’s outcomes and evidence visible.
Bring your portfolio data dictionary and the standards your LPs and regulators expect — IRIS+, GRI, ESRS — and generate candidate mappings in Sopact Sense that your team validates, so every rolled-up number is comparable, versioned, and traceable to its source.
Explore Impact & ESG Portfolio →