1. Purpose
The CORDIS Spain Dashboard is a tool for analysing Spanish participation in the Horizon Europe Framework Programme (2021-2027), built from the public CORDIS dataset. This document is its methodology companion: it records the choices made during construction, explains where numbers can be misread, and flags interpretation pitfalls that an experienced National Contact Point (NCP) or analyst should know before presenting figures to colleagues or stakeholders.
This is not an exhaustive specification (see the V1 Technical Plan for that). It is a curated set of decisions, conventions, and caveats — the things you would otherwise need to re-derive every time someone questions a number on screen.
Intended audience
- NCPs presenting Spanish HE figures to delegations, ministries, or regional governments.
- Policy analysts cross-checking dashboard numbers against other sources (the Commission's Horizon Dashboard, national agency reports, ministerial briefings).
- Technical reviewers auditing the ETL methodology before broader deployment.
- Future maintainers who will update the dashboard with new CORDIS snapshots or extend it in V2.
How to read this document
Each section presents a methodology choice in roughly this order: (a) what the dashboard does, (b) why that choice was made, (c) how the numbers should be read, and (d) the most likely misinterpretation to pre-empt. Numerical examples reflect the 17 June 2026 CORDIS snapshot.
2. Data scope and snapshot
2.1 Source
The dashboard reads from the CORDIS Horizon Europe XLSX dataset published monthly by the European Commission. Specifically, six files are used in V1: project.xlsx, organization.xlsx, topics.xlsx, legalBasis.xlsx, euroSciVoc.xlsx, and policyPriorities.xlsx.
Project outputs (deliverables, publications, IPR, report summaries) and the report-article collections are not in V1 scope; they are reserved for V2.
2.2 Snapshot date
All figures in this document reflect the 17 June 2026 CORDIS snapshot. Headline counts and totals will change with each monthly refresh. The dashboard's metadata.json file always carries the generation timestamp; treat the on-page numbers as accurate to that moment.
2.3 What CORDIS contains, what it does not
CORDIS is the public-facing repository of signed Horizon Europe grants. Crucially, it does not contain:
- Submitted proposals (only signed grants appear).
- Application volumes, eligibility outcomes, or success rates.
- Evaluation scores or expert evaluator information.
- Seal of Excellence designations.
- Rejected applications under any scheme.
These proposal-stage metrics are held in eCORDA, the Commission's restricted internal database. The dashboard structurally cannot reproduce them. If a colleague asks for Spain's success rate or applications-to-grants ratio, the dashboard is not the right source.
2.4 Definition of "Spanish project"
Working definition
Spanish project = any Horizon Europe project with at least one entity whose country code is ES in the CORDIS organization.xlsx table, regardless of that entity's role (coordinator, participant, third party, etc.).
Under the 17 June 2026 snapshot this yields 6,100 projects across all statuses. Most metrics on the dashboard subtract the 109 projects with status TERMINATED (see Section 3), leaving the canonical 5,991 figure that appears on the Overview page.
3. Treatment of TERMINATED projects
CORDIS projects can have several statuses. Since V1.3.9, the dashboard's default universe includes all of them:
| Status | Meaning | In the default counts? |
|---|---|---|
| SIGNED | Active, agreement signed | Yes |
| CLOSED | Closed normally | Yes |
| TERMINATED | Stopped before completion | Yes (excludable via the Status filter) |
| SUSPENDED | Temporarily paused | Yes (none in current data) |
3.1 Why they are included
Including all statuses makes the dashboard's totals reconcile with any direct sum over raw CORDIS data and with the Commission's Horizon Dashboard. Users needing the "ongoing" universe can exclude TERMINATED projects with the Project status filter; every tab recomputes instantly.
3.2 Caveat on terminated-project amounts
The EU contribution of a TERMINATED project is the signed grant-agreement amount, which may overstate what was actually disbursed if the project stopped mid-execution. CORDIS does not publish final settled amounts.
3.3 Historical comparability note
Until V1.3.8 (July 2026), the dashboard excluded TERMINATED projects by default. Figures published or cited before that date are on the old basis: for instance, the June 2026 snapshot's total EU contribution was €6,181.6M on the old basis and is €6,216.9M on the current one (111 TERMINATED projects, ~€35.2M). To reproduce old figures, select SIGNED and CLOSED in the Status filter.
4. Spanish-led, Monobeneficiary, and Participants
The dashboard splits projects with Spanish involvement into three mutually exclusive role categories. The distinction matters because the term "Spanish coordinator" is ambiguous and tends to inflate apparent leadership when applied uncritically.
Definitions
Coordinator (badge label) / Spanish-led — a Spanish entity holds the coordinator role on a project with two or more signing beneficiaries. This is genuine leadership of a consortium.
Monobeneficiary — a Spanish entity is the only signing beneficiary on the project. The "coordinator" role is administrative only; there is no one else being coordinated. Typical instruments: ERC grants, MSCA Postdoctoral Fellowships, EIC Accelerator.
Participants — the project has at least one Spanish entity but the coordinator is a non-Spanish entity. Spain contributes to the consortium as a partner.
| Category | Projects | % of Spanish projects | EU contrib. to ES partners |
|---|---|---|---|
| Coordinator (Spanish-led) | 1,110 | 18.5% | €1,485 M |
| Monobeneficiary | 1,461 | 24.4% | €1,006 M |
| Total Spanish-coordinated | 2,571 | 42.9% | €2,491 M |
| Participants | 3,420 | 57.1% | €3,206 M |
| All Spanish projects | 5,991 | 100% | €5,697 M |
4.1 Why the distinction matters
A naïve count of "Spanish-coordinated projects" yields 2,571 (42.9% of the Spanish portfolio). Read carelessly, this suggests Spain leads nearly half of its Horizon Europe projects. The reality is more nuanced:
- Of those 2,571, only 1,110 (18.5%) involve Spain leading other entities.
- The remaining 1,461 (24.4%) are individual-researcher or single-SME grants where the "coordinator" role is purely administrative. The Spanish entity hosts the work but does not coordinate anyone else.
When presenting Spanish leadership in Horizon Europe, the relevant figure is 1,110 Spanish-led projects (18.5%), not 2,571 "coordinations". The 2,571 figure is correct but easily over-interpreted.
4.2 Mechanism in the data
The classifier uses the count of beneficiary-role rows per project (role IN coordinator, participant). Roles such as thirdParty, partner (MSCA-only), associatedPartner, and internationalPartner do not count, since these do not sign the Grant Agreement and do not receive EU funding directly. This naturally produces the mono-vs-multi split.
5. EU contribution: net vs. gross
The dashboard distinguishes between three financial concepts. The default metric throughout is the most conservative one (net contribution).
Three figures
Project total EU contribution — the sum across all participants of a project (CORDIS field ecMaxContribution). This is the entire grant amount, irrespective of which entities received which share.
Gross EU contribution to ES partners (ecContribution) — the amount assigned to each Spanish participation. For entities that redistribute funding to linked third parties, this figure includes the redistributed portion — i.e. it overstates what the entity actually keeps.
Net EU contribution to ES partners (netEcContribution) — the amount the entity actually receives, after deducting funding passed through to linked third parties. This is what survives technical scrutiny as the entity's real return.
Dashboard convention: all EU contribution figures use the net value. Column headers display a tooltip explaining the meaning.
5.1 Why net matters
In the June 2026 snapshot, 660 Spanish participations redistribute a combined €234.8 M to linked third parties. The gross figure assigns this amount to the redistributing entity; the net figure correctly attributes it to the third party that actually receives it. At the aggregate level the difference nearly cancels (most third parties are also Spanish), but at the entity level the distortion can be massive — e.g. an entity showing €22 M gross but only €3 M net.
5.2 Worked example
Consider a hypothetical Horizon Europe RIA project with €5 million total EU contribution, signed by:
- Spanish coordinator A — receives €1.0 M
- Spanish partner B — receives €0.4 M
- Italian partner C — receives €1.6 M
- German partner D — receives €1.5 M
- Belgian partner E — receives €0.5 M
Across the dashboard:
- The Projects page "EU contrib." column shows €5.0 M (project total).
- The Projects page "EU contrib. to ES" column shows €1.4 M (sum of A + B).
- The Overview "EU contribution to Spanish participants" KPI counts €1.4 M, not €5.0 M, towards Spain's total.
- The Regional Analysis page (if A is in Cataluña and B in Madrid) credits €1.0 M to Cataluña and €0.4 M to Madrid.
- The Collaborations page (under DE) credits €1.5 M, not €5.0 M, to Germany on Spanish-joint projects.
5.3 Why this matters
Using the project total would inflate every regional and partner figure: a single multi-country project would be counted at its full value in every region of every participant. The dashboard would over-state both Spanish funding and partner-country funding, often by 3–10×. The participation-level metric, while less impressive in headline form, is what survives technical scrutiny.
5.4 Label clarity
The Regional Analysis and Collaborations pages use labels like "EU contrib. received" and "EU contrib. to partners" to make this explicit. Tooltips on each column header restate the definition. The intent is that no reader should have to ask "is this the project total or the local share" — the label answers it.
Note: although intuitively the net contribution should always be less than or equal to the gross one, this does not hold systematically in CORDIS data: in the May 2026 snapshot, the Spanish net total (€5,707.6M) exceeded the gross total (€5,696.8M). The two columns come from different grant-file fields and have no guaranteed ordering; the dashboard always uses the net figure.
6. The CSIC bundling artefact
The Spanish National Research Council (Consejo Superior de Investigaciones Científicas, CSIC) operates more than 120 institutes across Spain. In CORDIS, however, the entire organisation uses a single Participant Identifier Code (PIC: 999991722), with the central administrative address (Calle Serrano 117, Madrid) attached to every participation.
This is an organisational reality, not a data bug. Many large research councils share a single PIC across their institutes. But it creates a systematic bias for any region-level analysis.
6.1 What the dashboard does
- CSIC participations (805 in the current snapshot) are assigned to a dedicated "Multi-region (CSIC)" bucket, not to Madrid.
- This bucket is visible in the Regional Analysis ranking table and in NUTS-2 filters, but is excluded from the choropleth map (it lacks a single location).
- A footnote on the map explains why.
- On the Organisations page, CSIC appears as a single entity with all 805 participations and €371 M EU contribution.
6.2 What the Horizon Dashboard does
The Commission's Horizon Dashboard does not separate CSIC: its 805 participations and €371 M are lumped into Madrid (since the PIC address is Madrid-based). This makes Madrid appear larger than Cataluña by both project count and EU contribution.
6.3 Comparison
| Source | Cataluña | Madrid | Multi-region (CSIC) |
|---|---|---|---|
| This dashboard (CSIC separated) | 3,933 / €1,959 M | 2,778 / €1,045 M | 805 / €371 M |
| Horizon Dashboard (CSIC in Madrid) | ≈3,514 (NUTS-3) | ≈3,501 (NUTS-3 incl. CSIC) | Not reported separately |
Methodologically this dashboard is more honest: Madrid is a region, CSIC is a pan-Spanish institution that happens to have its head office in Madrid. Adding CSIC's institute-level activity to Madrid systematically over-states Madrid's regional research output.
6.4 What to say if challenged
If someone says "the Horizon Dashboard shows Madrid leading Cataluña, but yours doesn't", the correct response is: the difference is CSIC. When CSIC is separated (as in this dashboard), Cataluña leads Spanish regional participation. When CSIC is absorbed into Madrid (as in HD), Madrid leads. Both views are defensible, but the CSIC-separated view is more meaningful for regional research-policy analysis.
7. NUTS-2 reverse-lookup for missing region codes
CORDIS organisations carry NUTS codes in the form of 5-character strings (e.g. ES511 for Barcelona). The first four characters give the NUTS-2 region (ES51 for Cataluña). However, 70 Spanish participations in the 17 June 2026 snapshot have problematic NUTS codes:
| Issue | Count | How the ETL handles it |
|---|---|---|
| Missing NUTS code (null) | 26 | Assigned to Unknown region |
| Truncated NUTS code ("ES" only) | 44 | Reverse-looked-up from postal code |
| Non-Spanish NUTS code on ES-country row | 0 | (None in current data) |
For the 44 truncated cases, the ETL uses a province-prefix-to-NUTS-2 mapping (first two digits of postal code → province → NUTS-2 region). This recovered 44 out of 70 problematic rows. The remaining 26 are typically associated partners, self-employed researchers, or individuals whose postal data is absent. They appear in an explicit Unknown region bucket on the Regional Analysis page.
8. Regional Analysis page: how to read it
8.1 Map vs. table
- The map shows only mappable NUTS-2 regions (17 of them). CSIC and Unknown buckets are excluded from the map because they lack a single geographic centroid.
- The table shows all 19 rows including CSIC and Unknown, so the totals always reconcile.
- CSIC and Unknown rows are visually muted (grey) in the table and annotated with a brief explanatory note.
8.2 The metric toggle
Switching between Participations / EU contrib. received / Entities / Coordinations changes the map's colour scale and the circle radii. The same region can appear prominent under one metric and modest under another.
8.3 "EU contrib. received" specifically
This is the sum of ecContribution across Spanish participations within the region, as explained in Section 5. A region with one large project (say a €5 M ERC grant) and a region with ten small projects (€500 K each) will show the same total. The metric is correct but does not on its own indicate the region's research intensity, only its absorptive capacity of EU funding.
8.4 Madrid figures, post-CSIC
Because CSIC's 805 participations are separated from Madrid, Madrid's row shows 2,778 participations rather than the ~3,583 a Horizon Dashboard-style aggregation would give. Anyone comparing Madrid's regional position to other sources will see this gap; it is intentional. The CSIC row is the missing piece.
9. Topics and Classifications page
9.1 The four sub-tabs
- Programme — hierarchical navigation through Pillar > Component > Instrument or destination > Variant. Counts at each level are distinct projects with Spanish participation under that part of the tree. Each project appears exactly once, under its main programme (since V1.8.3 — see §20; previously it could appear under several parts at once). The third and fourth levels are explained in §21.
- Topics — sortable, year-filterable table of HORIZON call topic codes. Each row aggregates Spanish projects submitted under that specific call.
- EuroSciVoc — top-level scientific-domain breakdown with second-level drill-down. See note in 9.2 below.
- Policy priorities — five clickable cards (AI, Biodiversity, Clean Air, Climate, Digital Agenda), with full/partial alignment counts.
9.2 EuroSciVoc: percentages don't sum to 100%
Projects can be tagged with multiple EuroSciVoc codes spanning more than one top-level domain. A project on bio-inspired AI for medical imaging might appear under "Natural sciences", "Engineering and technology", and "Medical and health sciences" simultaneously.
Consequently, summing the percentages shown on each domain card on the EuroSciVoc sub-tab will give a number greater than 100%. This is by design: each percentage is the share of Spanish projects touching that domain, not an exclusive partition of the portfolio.
If someone says "the EuroSciVoc shares don't add up", the answer is: they shouldn't. EuroSciVoc tags are not mutually exclusive.
9.3 Call year vs. signature year
The dashboard works with two distinct time axes. Confusing them is one of the easiest reading errors to make, because both are labelled simply "year".
Call year — derived from the topic code: the first group of four digits 20xx appearing in it. This is the year the call was published. It is the default basis for the chronological charts.
Signature year (ecSignatureYear) — the year the grant agreement was signed. This is what the sidebar Year filter always uses.
A topic published as HORIZON-MSCA-2023-PF-01-01 may have produced projects signed in 2023, 2024 or 2025, depending on evaluation timing. The same total therefore distributes differently across years depending on the basis chosen, even though the total itself does not change.
Where each is used. Since V1.7.0 the call year is the default basis for the chronological charts on Overview, SNS, Posición ES, the headline indicators and the embeddable widgets — not only on the Topics sub-tab, as was the case until then. Overview and the embeddable widgets offer a toggle to switch to signature year (in the widgets, via the data-year-basis="signature" attribute). Posición ES always works by call year, because its aggregates are pre-computed that way. And the sidebar Year filter is always signature year, including when the chart in front of you is drawn by call year: combining the two is legitimate — "projects signed in 2024, distributed by the year of their call" — but it is worth knowing that two different axes are being crossed.
When it cannot be derived. If the topic spans two years (HORIZON-EIT-2023-2025-HEI) the call year is ambiguous; if it contains no year, there is nothing to extract. In both cases the signature year is used instead. On the 7 August 2026 snapshot this affects 2 of 6,916 projects in Horizon Europe (0.0%) but 1,870 of 8,818 in H2020 (21.2%), because H2020 topic codes are far less regular (SPACE, BG-09-2014, EURATOM…). Put differently: in Horizon Europe the call-year axis is essentially pure, whereas in H2020 a fifth of the series is really signature year. That is a mixed axis to keep in mind before reading the H2020 series as a chronology of calls.
9.4 Policy priorities: methodology
The Climate Mainstreaming Architecture (Commission Staff Working Document SWD(2022)225) defines three alignment levels for each tracker: 0% (no contribution), 40% (significant contribution), 100% (project's primary objective). The dashboard reports the count of projects at each level separately.
- "Fully aligned" = 100% (the policy area is the project's primary objective).
- "Partially aligned" = 40% (the project contributes meaningfully but not as primary objective).
Of the 5,991 Spanish projects, 103 lack policy_priorities data entirely (the field was not populated for them in CORDIS). These appear in the total denominator but contribute 0 to every alignment count, slightly diluting the "% of portfolio" figures shown on each card.
9.5 Climate at 58.8% — context
Spain's climate-aligned project share (fully + partially) sits around 58.8% in the current snapshot. This may look like Spanish overperformance against the EU-wide 35% climate-spend target. It is not: the 35% target is a spending target (share of budget), whereas 58.8% is a project-count share. The denominators are different, the methodology is different, and comparing them suggests an overperformance that the data does not support. Use this number for what it is: a project-level indicator of climate orientation, not a budget-share comparison.
10. Collaborations page
10.1 Scope
All Collaborations metrics are joint-project-scoped
Every figure on the Collaborations page (country counts, EU contributions to partners, participation counts) reflects only projects in which at least one Spanish entity participates.
This is a deliberate choice. A page about Spain's collaborations should not present Germany's all-HE participation as if it were collaboration with Spain.
10.2 The country choropleth
- Colour scale is quantile-based and recomputed when the metric toggle changes. The same country may appear dark blue under "Joint projects" and pale under "EU contrib. to partners".
- Countries with no Spain-joint collaboration appear in light grey (not white) to indicate the absence of data without making them invisible.
- Spain itself is highlighted in orange as a visual cue, not as a data point.
10.3 UK and Switzerland: low EU contribution, high project count
Two associated-country anomalies are worth noting when presenting the map:
| Country | Joint projects | EU contrib. to partners | Reason |
|---|---|---|---|
| UK | 1,849 | €480 M | Post-Brexit loss of beneficiary status mid-programme |
| CH | 1,158 | €76 M | Partial association: limited eligibility for many calls |
Under "Joint projects" both countries appear as strong Spanish partners. Under "EU contrib. to partners" they fall sharply. This is correct: UK and Swiss entities frequently appear on Spanish projects without receiving EU funding, because the EU pays them as third-country partners on national co-funding instead.
10.4 The 100-row organisation-pair table
The full collaborations_org_summary table contains approximately 201,000 Spanish-to-partner organisation pairs. Displaying all of them in a browser is impractical. The default view shows the top 100 by joint-project count. Filtering by Spanish entity name (substring match) narrows the view to that entity's specific international partner network.
If a user expects "all CSIC collaborations" or "all UPC collaborations" and sees only 100 rows, the fix is to type the org name in the filter — the table will then return only that entity's partners, typically several hundred to a few thousand rows depending on the entity's size.
10.5 ISO-2 code remapping
CORDIS uses two ISO-2 codes that differ from most geographic standards:
- UK (United Kingdom) — most GeoJSON files and ISO 3166-1 alpha-2 use GB.
- EL (Greece) — most use GR.
The dashboard's choropleth re-maps these so the data join works correctly. Anyone cross-referencing the dashboard with external GIS data should be aware of the mapping; both codes are noted in the page footnote.
11. Special-case entities
11.1 EIT KIC Urban Mobility
EIT KIC Urban Mobility (EU PIC 945046624) is headquartered in Barcelona and therefore classified as a Spanish entity throughout CORDIS. In the 17 June 2026 snapshot it is the single largest Spanish recipient of EU contribution (€400.8 M), ahead of CSIC (€370.8 M).
It is, however, a pan-European Knowledge and Innovation Community: a single legal vehicle through which the EIT funds urban-mobility activity across many member states. The Spanish-HQ designation reflects the legal address, not the geography of the work itself.
Both this dashboard and the Horizon Dashboard count it as Spanish. Neither flags the artefact in the default view. Anyone comparing top-recipient lists across countries should know that the €400 M attributed to Spain via this PIC funds activity well outside Spain.
11.2 Brexit-affected UK entities
UK entities can appear on Spanish-joint projects, often retain their PICs in CORDIS, but typically receive €0 in ecContribution because they lost beneficiary status under the 2020 Brexit settlement. They appear with role "internationalPartner" or "associatedPartner" rather than "participant".
Counting all UK appearances as full collaborations overstates UK's substantive contribution to Spanish projects. The "EU contrib. to partners" metric is the truer measure of active UK engagement.
11.3 Swiss entities
Switzerland's association to Horizon Europe is partial: Swiss entities are excluded from many calls and from a number of categories of action under Pillar II. They appear on collaborations but their participation depth varies by call. Same caveat as UK applies.
11.4 Shared-PIC entities other than CSIC
CSIC is not the only Spanish entity where a single PIC covers multiple geographic sites, but it is the largest such case by an order of magnitude. The dashboard treats only CSIC explicitly. For smaller cases (some pharmaceutical companies, banking groups, or other research consortia) the participation appears at the corporate headquarters NUTS-2 region, which may or may not reflect where the actual research happens. This is a known limitation; full entity resolution is a V2 enhancement.
11.5 The EIT inside the per-pillar return
The Spanish Pillar III return this dashboard shows, including the "Posición ES" page, includes the EIT. That is worth knowing because the EIT is not distributed like the rest of the pillar: it is concentrated in very few projects and, above all, in the entity described in §11.1.
On the 7 August 2026 snapshot, restricted to signature years 2021-2024 (the window of CDTI's February 2026 report), Pillar III breaks down as follows:
| Component | Projects | Net EU contribution to ES entities |
|---|---|---|
| EIC (HORIZON.3.1) | 257 | €298.9M |
| EIT (HORIZON.3.3) | 16 | €200.8M |
| EIE (HORIZON.3.2) | 75 | €52.6M |
| Pillar III total | €552.3M |
Of that €200.8M of EIT funding, €158.7M goes to a single entity, EIT KIC Urban Mobility SL, and €131.7M to a single project (EITUM-BP23-25) where it is the coordinator.
CDTI's report gives €354.6M for Pillar III over the same window. Our figure without the EIT would be €351.5M: a 0.9% difference, the same order of agreement the clusters show one by one (§12.3). This does not prove that CDTI excludes the EIT. We have not checked its methodology, and a match, however close, is an indication rather than proof. What IS verified is the mechanism: the KIC's legal entity is domiciled in Spain and receives the full annual grant before redistributing it among partners across several Member States.
Not to be confused with §5: this is not the difference between ecContribution and netEcContribution. The net contribution lands on the Spanish entity too, because that entity holds the grant — indeed for the EIT the net figure (€200.8M) exceeds the gross one (€183.7M).
In practice: when comparing Pillar III return against any other source, the first question to ask is whether that source includes the EIT.
12. Cross-checks against external sources
The dashboard's figures were cross-checked against two reference sources during development. This section documents the comparison methodology, the points of agreement, and the intentional differences. The intent is to give analysts a defensible basis for the numbers shown and a clear answer to "how does this compare with what the Commission / national agency publishes."
12.1 The two reference sources
- Horizon Dashboard — the European Commission's official public dashboard of Horizon Europe data. Updated periodically. Audience: general analysts and institutional communication.
- CDTI annual report — the Spanish national funding agency's annual analysis of Spanish participation, published in Spanish. The most recent edition covers through end-2024. Audience: Spanish ministerial community, NCPs, and policy-makers.
The two sources use different methodologies, different update cadences, and different scopes. The dashboard reproduces what CORDIS makes public; both reference sources have access to deeper data (eCORDA for Horizon Dashboard; raw CORDIS plus internal eCORDA for CDTI). The cross-check therefore is not about matching their numbers exactly — it is about understanding which differences are snapshot drift, which are methodological, and which would warrant further investigation.
12.2 Cross-check against the Horizon Dashboard
The Commission's Horizon Dashboard is the closest public-facing point of comparison. The following table summarises agreement on directly comparable metrics, using the 17 June 2026 dashboard snapshot.
| Metric | Horizon Dashboard | This dashboard | Difference |
|---|---|---|---|
| Net EU contribution | €5.6 B | €5.70 B | +1.7% |
| Signed grants | 5,921 | 5,991 | +1.2% |
| Participations | 13,624 | 13,742 | +0.9% |
| Unique participations | 3,134 | 3,103 | −1.0% |
| ERC PIs | 476 | 497 | +4.4% |
| EU contribution to ES ERC | €689.6 M | €703.1 M | +2.0% |
| EIC participations | 575 | 499 | −13.2% |
| MSCA participations | 3,087 | 3,092 | +0.2% |
| MSCA unique participants | 833 | 842 | +1.1% |
Most metrics match within 3%. The residual variance is attributable to snapshot-date drift (Horizon Dashboard's exact refresh date is not disclosed) and minor differences in deduplication.
The EIC discrepancy
The EIC participations gap (−13.2%) is the largest unexplained difference. The most likely cause is that the Horizon Dashboard includes Seal of Excellence projects (rejected by the EU but recommended for national funding), which this dashboard does not. A second possibility is a missing scheme-prefix in our filter (e.g. EIC Pathways or EIC Transition variants). Investigation is queued for V1.1.
Metrics the Horizon Dashboard has and this dashboard cannot
- Success rate (Horizon Dashboard: 18.47% for Spain).
- Eligible proposals (Horizon Dashboard: 33,938).
- Total applications (Horizon Dashboard: 70,344).
- Expert evaluators (Horizon Dashboard: 3,409 female evaluators for Spain).
- Seal of Excellence projects (Horizon Dashboard: 1,244 for Spain).
These metrics come from eCORDA (the Commission's restricted internal database), not from public CORDIS. The dashboard structurally cannot reproduce them in V1 or any future version without granted eCORDA access.
Metrics this dashboard has and the Horizon Dashboard does not
- Spanish-led vs. Monobeneficiary distinction (HD treats both as "coordinations").
- CSIC bucketed separately from Madrid (HD aggregates into Madrid).
- Per-project drill-down with full participant lists and per-org EU-contribution detail.
- Spanish-joint scope on the Collaborations page (HD shows partner-country statistics across all HE, not just Spanish-joint).
12.3 Cross-check against the CDTI annual report
Methodological note first: this cross-check is what determined the dashboard's funding criterion — counting each project in its main programme rather than in every code it carries. The detail, with the per-area validation table, is in §20. Without that criterion, two of the four comparable areas tripled the official figure.
The CDTI annual report "Spanish Participation in Horizon Europe", 2026 edition, covers the period 2021-2024. It is the reference document for Spanish policy analysis and ministerial briefings. To validate the dashboard against this reference, the dashboard's own figures were re-aggregated filtering to projects signed up to 31 December 2024, with status SIGNED or CLOSED — exactly replicating the CDTI report's time window.
Terminology mapping
| CDTI term | Equivalent in this dashboard |
|---|---|
| Financiadas España | Spanish projects |
| Coordinadas España | Total Spanish-coordinated |
| Participaciones | Spanish participations |
| Proyectos liderados ES | Coordinator (Spanish-led) — see discussion in 12.3.2 |
| Entidades españolas | Distinct Spanish organisations |
| Nº de empresas | Organisations with activityType = PRC |
| % PYME | Organisations with SME=True / total PRC — see discussion in 12.3.3 |
| Retorno económico (M€) | EU contribution to ES partners (sum of ecContribution) |
12.3.1 Direct numerical comparison (2021-2024)
| Metric | CDTI 2026 (2021-2024) | This dashboard (2021-2024) | Difference |
|---|---|---|---|
| Funded projects with ES participation | 4,813 | 4,762 | −1.1% |
| ES-coordinated projects | 1,922 | 1,884 | −2.0% |
| Spanish participations | 11,227 | 11,333 | +0.9% |
| Distinct Spanish organisations | 2,834 | 2,781 | −1.9% |
| Spanish companies (PRC) | 1,776 | 1,783 | +0.4% |
| EU contribution (M€) | 4,507.6 | 4,494.8 | −0.3% |
| Spanish-led projects (CDTI criterion — see 12.3.2) | 686 | 685 | −0.1% |
| % SME of companies (see 12.3.3) | 77.7% | 55.4% | −22 pp |
Substantial agreement
Seven of the eight comparable metrics match within ±2%. EU contribution matches within 0.3% — a near-exact validation. This provides a solid basis for using dashboard figures in Spanish policy presentations, knowing they reproduce the same magnitudes as the official CDTI reference when the same time window is applied.
12.3.2 CDTI's "Liderados" methodology — reproduced
The CDTI's criterion for "Proyectos liderados" is not published in detail, but this investigation has reproduced it empirically. Applying to the dashboard the following conditions:
- A Spanish entity in the coordinator role,
- Project with two or more signing beneficiaries (multi-beneficiary),
- Funding scheme excluding ERC, MSCA-* and EIC — i.e. truly collaborative schemes (RIA, IA, CSA, JU-RIA, JU-IA, COFUND, EIT-KIC, PCP, EURATOM-RIA, etc.) without individual fellowship or individual innovation instruments.
yields 685 projects — against the 686 reported by CDTI. The 1-project difference is within snapshot-drift tolerance.
Reading: the CDTI's "Liderados" indicator specifically captures Spanish leadership of collaborative research consortia, excluding instruments where Spain is the administrative coordinator but does not lead a consortium in any substantive sense (ERC = an individual researcher; MSCA-DN/SE/COFUND = doctoral training networks; EIC = an individual innovative company). This refines our broader "Coordinator (Spanish-led)" — which is wider (937 in 2021-2024, 1,110 in 17 June 2026).
The correct answer to "how many projects does Spain lead in Horizon Europe?" therefore depends on the cut-off definition:
- 686 (CDTI criterion) — leadership of collaborative consortia in the strict sense, excludes fellowships and individual innovation.
- 937 (our "Spanish-led" in 2021-2024) — leadership of any multi-beneficiary project, includes Spanish-led training programmes (MSCA-DN, MSCA-SE).
- 1,110 (our "Spanish-led" in 17 June 2026) — same criterion as above, with more recent snapshot.
All three readings are defensible provided the criterion is documented. The 1,110 figure is what the dashboard's Overview KPI currently displays.
12.3.3 The % SME discrepancy (77.7% vs 55.4%)
The most significant divergence is the 22-percentage-point gap in the SME share among Spanish companies. The possible explanations investigated:
- Participation-level vs. entity-level counting: tested — yields 52.6% (does not close the gap).
- "Ever flagged as SME" in any participation: tested — yields 55.5% (negligible change).
- Restriction to Pillar III (EIC instruments): yields 76.4% — suspiciously close, but not the methodology CDTI uses for this row of its table.
The most likely explanation is that CDTI enriches the SME flag with Spanish national data — the SME field in CORDIS is self-declared by the participant when submitting the proposal, and many Spanish companies that technically meet the EU SME criteria do not declare it on the form. CDTI, with access to Spain's Directorio Central de Empresas and similar national registers, can determine SME status more exhaustively.
Implication: the dashboard's figure (55.4%) is a conservative lower bound on the real SME presence in Spanish Horizon Europe participation. The CDTI figure (77.7%) likely reflects reality better. For policy communication, use the CDTI figure with attribution; the dashboard serves as an order-of-magnitude check.
12.3.4 Metrics CDTI reports that this dashboard cannot
The CDTI 2026 report includes several categories that are structurally outside the dashboard's scope:
| Category | CDTI 2021-2024 | Why we cannot reproduce |
|---|---|---|
| Submitted proposals with ES participation | 25,298 (26.2%) | eCORDA only (not in public CORDIS) |
| ES-coordinated proposals | 10,897 (11.3%) | eCORDA only |
| Participations in proposals | 52,022 (11.1%) | eCORDA only |
| ES requested funding (M€) | 24,441.8 (10.1%) | eCORDA only |
| ES success rate | 19.0% | Requires funded/submitted ratio |
| EU total success rate | 16.0% | Requires EU-total denominator (eCORDA) |
| EU-share of return | 11.4% | Requires total EU return (eCORDA) |
| Total-share of return | 10.3% | Requires total HE funding (eCORDA) |
| Spain rank by return | 3rd | Requires all-Member-State ranking |
These figures come from the Commission's eCORDA database, accessible only to designated national authorities (in Spain, CDTI). The dashboard structurally cannot reproduce them without a formal eCORDA access agreement.
12.3.5 Connecting to the dashboard's current figures
The dashboard displays the state as of 17 June 2026, not the end-of-2024 cut-off of the CDTI report. To bridge the two references mentally:
| Metric | CDTI through 2024 | Dashboard 17 June 2026 | Approx Δ |
|---|---|---|---|
| Spanish projects | 4,813 | 5,991 | +24% |
| Participations | 11,227 | 13,742 | +22% |
| Spanish organisations | 2,834 | 3,103 | +9% |
| Total coordinated | 1,922 | 2,571 | +34% |
| EU contribution (M€) | 4,507.6 | 5,696.8 | +26% |
The ~25% growth reflects the additional 18 months of signatures (2025 + first half of 2026) plus late signatures of 2021-2024 framework programme projects still being formalised. The stronger growth in "Total coordinated" (+34%) suggests Spain has been more active in coordination during 2025-2026 than in earlier years — a positive indicator worth dedicated analysis.
12.4 Summary of agreement and divergence
| Topic | Agreement | Divergence |
|---|---|---|
| Coordinated vs. Led distinction | Yes — same conceptual structure | Slightly different exact criteria for "Led" |
| TERMINATED status | Both exclude from headlines | — |
| NUTS-2 regional analysis | Both publish breakdowns | This dashboard separates CSIC; CDTI publishes per its own methodology |
| Time window | — | Different (CDTI ≤2024, this 17 June 2026) |
| Top recipients | Same major entities (CSIC, UPC, BSC-CNS) | This dashboard makes EIT KIC Urban Mobility visible as Barcelona-HQ artefact |
| Pre-grant data | — | CDTI includes proposals, evaluations; this dashboard only signed grants |
13. Presentation tips for analysts
Below are the most common ways people interpret dashboard numbers incorrectly, with the suggested correction.
14. Glossary
- Beneficiary
- An entity with role coordinator or participant — entities that sign the Grant Agreement and receive EU funding directly.
- Coordinator (badge)
- A Spanish entity that holds the coordinator role on a multi-beneficiary project. Excludes monobeneficiary cases. Synonym: Spanish-led.
- CSIC bucket
- An explicit "Multi-region (CSIC)" category that holds participations from PIC 999991722, separating them from Madrid where the central office is located.
- ecContribution
- CORDIS field — the EU contribution paid to a specific organisation in a specific project. Used throughout the dashboard for any "EU contribution to ES" figure.
- ecMaxContribution
- CORDIS field — the total EU contribution committed to a project across all its participants. Used only for the "EU contrib." column on the Projects page, never for aggregated regional or partner figures.
- EuroSciVoc
- European Science Vocabulary — a hierarchical scientific-domain classification maintained by the Commission. Projects can be tagged with multiple codes.
- Joint project
- A Horizon Europe project in which at least one Spanish entity participates. Used in the Collaborations page to scope partner-country aggregates.
- Monobeneficiary
- A project with exactly one signing beneficiary, who is Spanish. Typical instruments: ERC, MSCA-PF, EIC Accelerator.
- NCP
- National Contact Point — designated national experts who provide advice and support to applicants for Horizon Europe funding.
- NUTS-2
- Nomenclature of Territorial Units for Statistics, level 2 — Eurostat's regional classification. Spain has 19 NUTS-2 regions plus the dashboard's CSIC and Unknown buckets.
- Participant
- An entity with role participant — a signing beneficiary that is not the coordinator. Synonymous with "partner" in common usage.
- Participation
- A single row in the CORDIS organization.xlsx — one entity's involvement in one project. A project with 8 partners produces 8 participations.
- PIC
- Participant Identification Code — the EU-wide unique identifier for an organisation in the Funding & Tenders Portal. One PIC per legal entity.
- Pillar
- Top-level structure of Horizon Europe: Pillar I (Excellent Science), Pillar II (Global Challenges), Pillar III (Innovative Europe), plus Widening (Pillar IV) and EURATOM.
- Spanish-joint
- A project that involves at least one Spanish entity. Used to scope the Collaborations page.
- TERMINATED
- A project status — the grant agreement was stopped before normal completion. Excluded from Overview metrics; visible if filtered in on the Projects page.
15. Limitations of V1 and what V2 may bring
15.1 Acknowledged limitations of V1
- Data updates are manual. The ETL must be re-run when a new CORDIS snapshot is released; the dashboard does not auto-refresh.
- Organisation deduplication is limited to PIC-level. Two legal entities with separate PICs that are in fact the same operational entity are not merged.
- No proposal-level data. All metrics about applications, eligibility, success rates, evaluation, and Seal of Excellence are unavailable.
- Project outputs (deliverables, publications, IPR, report summaries) are not included.
- The choropleth resolution on the Collaborations page is Natural Earth 110m. Three small island nations are absent from the map (but visible in the ranking table).
- Accessibility is basic (semantic HTML, keyboard navigation, colour contrast) but not formally WCAG-tested.
15.2 Likely V2 priorities
- Automated CORDIS source-checking and update workflow (GitHub Action, cron, or lightweight backend).
- Full organisation entity resolution (name matching, VAT cross-referencing).
- Embed buttons for individual charts and tables, enabling reuse on other websites.
- Project-output modules using webLink.xlsx and webItem.xlsx.
- NUTS-3 (province-level) drill-down to address Barcelona-vs-Madrid ambiguity at finer granularity.
- Formal WCAG audit and accessibility enhancements.
- EIC participation reconciliation with Horizon Dashboard.
- Automated ETL ↔ frontend check on shared rules. The ETL (Python) and the dashboard (JavaScript) separately implement at least three rules that must agree: the topic-derived call year, the destination/instrument segment, and the main-programme criterion. All three have diverged at some point with nothing detecting it — the segment rule for months, producing different destination names on each side. A smoke-test check that runs the same list of topics through both implementations and compares the output would catch the divergence the day it happens. Cheaper than unifying the code, which would need a common interpreter across Python and JavaScript.
16. Monthly Trend and automated checks
16.1 What the Monthly Trend tab shows
The Monthly Trend tab displays the aggregated evolution of Spanish participation across the monthly snapshots published by CORDIS. Unlike the rest of the dashboard, this page is not interactive through filters: the data shown are pre-computed aggregates over the full population at each snapshot, so filtering would not make sense. The filter chips bar is therefore hidden on this page.
The five sparklines show the headline KPIs (active projects, participations, distinct organisations, EU contribution, coordinations) over time. The stacked area chart decomposes the EU contribution by pillar. The two differential tables compare the latest snapshot with the previous one, sorted by |Δ EC| descending so the most significant movements appear first.
16.2 Definition of "active project" in the aggregates
Snapshots only count projects whose status is not TERMINATED, consistent with the Overview KPI definition. A participation counts as "active" if it belongs to an active project.
16.3 Automated checks (smoke tests)
On every new snapshot, the ETL script runs 10 invariants that must hold. Their purpose is to detect regressions of the kind "the sum by grouping no longer matches the total" before the data is published. The active invariants are:
- EC by pillar ≈ EC total ±5% — the sum of EU contribution across all pillars must match the total KPI, with tolerance for cross-pillar projects (see 16.4).
- EC by activity = EC total, exact — each participation has exactly one activity type, so the partition must be exhaustive and disjoint.
- Participations by role = total, exact — same logic for role.
- Distinct orgs ≤ total participations — every organisation has at least one participation.
- Coordinations ≤ total participations — every coordination is a participation.
- Distinct projects in ES participations = KPI projects — the project count derived from active Spanish participations must equal the displayed KPI.
- EC total ≥ previous snapshot × 0.95 — contribution must not drop more than 5% month-on-month. A larger drop likely indicates a corrupt download or a CORDIS format change.
- Projects ≥ previous snapshot × 0.95 — analogous for the project count.
- NUTS-2 coverage ≥ 99% — at least 99% of Spanish participations must resolve to a known NUTS-2 code after the reverse lookup (Section 7).
- EC by pillar ≥ 0 — no aggregate sum may be negative, defending against data-type bugs.
Invariants 7 and 8 are skipped when no previous snapshot exists. The result of each check is stored in the snapshot's JSON under the smoke_results field. If any check fails, a visible warning appears on the Monthly Trend tab.
This verification layer was introduced after a bug surfaced retroactively in V1.1: EU contribution by pillar was inflated 30× by a redundant JOIN (HORIZON.2 showed €154B instead of €3.4B). Invariant 1 would catch this automatically. The cost of adding the checks was low; the cost of not having them was high.
16.4 Cross-pillar projects and the 0.3% drift
A single project may have multiple entries in legalBasis, e.g. HORIZON.2.4 and HORIZON.4.1, if its funding spans multiple parts of the framework programme. When EU contribution is aggregated by pillar, that project counts under each of its pillars. The consequence is a small excess when summing across all pillars vs. the total KPI: typically between 0.2% and 0.5%. This is deliberate behaviour — losing the cross-pillar information (by forcing a "main" pillar) would impoverish the analysis. Invariant 1 absorbs this with the ±5% tolerance.
16.5 Auto-synthesis and NCP notes
Each snapshot includes an automatically generated narrative summary that highlights the pillar and topical component with the largest absolute growth versus the previous snapshot. Thresholds (€10M and 20 projects) are applied to discard trivial movements in small pillars like Widening or EURATOM, which can show large percentage changes with irrelevant absolute numbers.
Alongside the auto-synthesis there is an editable NCP note field, empty by default. When published with content, it is shown prominently above the auto-synthesis. It allows adding interpretive context (which call justifies a growth, which regional peculiarity explains a movement) that the algorithm cannot deduce by itself. Notes are preserved across ETL re-runs: if the same date is reprocessed, existing notes are kept and only the aggregations are recomputed.
16.6 Expected frequency and operational cadence
CORDIS publishes a new snapshot approximately on the 17th of each month. The operating procedure is: manual ZIP download, ETL run with the SNAPSHOT_DATE environment variable pointing to the CORDIS publication date (not the processing date), cross-check of the main KPIs against Horizon Dashboard and/or the CDTI annual report, and frontend bundle release if no surprises. The automated checks run as part of the ETL; their results land in the snapshot JSON and are surfaced to the user in case of failure.
17. EU Missions: identification and limits
The "Missions" tab and the "EU Mission" filter (V1.3.6) classify projects by their topics: a project belongs to a mission if any of its topics starts with HORIZON-MISS- and contains that mission's code (CLIMA, CANCER/UNCAN, OCEAN, CIT, SOIL; NEB/COOR/CROSS form a small cross-cutting bucket). The mapping covers both topic formats (2021–24 and 2025, which shifted the code position) and was validated against the June 2026 snapshot: 146 of 146 mission topics classified.
17.1 Why topics rather than legalBasis
CORDIS assigns no dedicated legalBasis to missions: their projects sit under the ordinary cluster codes (HORIZON.2.1–2.6). The topic is therefore the only available identifier. Consequence: a mission project with no topic registered in CORDIS cannot be classified (rare but possible).
17.2 Overlap between missions
Joint calls (e.g. CIT-CANCER) mean a project can belong to two missions. This is the same double-counting semantics as the pillar breakdown (§16.4): summing the per-mission rows over-counts the universe. That is why the tab's table has no totals row and the KPI row is computed over the deduplicated union.
17.3 Interaction with global filters
The mission filter is a project-level predicate, like pillar or topic: it composes with the participation-level filters (region, role, entity type, SME) across every tab with the usual semantics. With a mission filter active, the "Missions" tab itself shows intersections with the selected missions.
18. Embeddable widgets
Since V1.3.7 the dashboard allows specific views to be inserted into other pages on the same domain via the "</> Embed" button, which copies an HTML fragment. It is not an iframe: the widget queries the same data and runs the same code as the dashboard, visually isolated through Shadow DOM.
18.1 Widget catalogue
Seventeen types, grouped by the scope of what they show:
- Spain-wide aggregates —
kpi-grid(the Overview KPI cards),kpi-card(a single card, selected withdata-metric),missions-chartandmissions-table(participation by EU Mission),regional-table(NUTS-2 region ranking) andregional-pivot(the pivot table from the Regional Analysis page; thedata-dimsattribute preserves the grouping order that was on screen when copied). - Single-entity profile — ten blocks reproducing each section of an organisation's detail drawer:
org-kpis(projects, coordinations, contribution),org-timeline(yearly evolution),org-roles(role breakdown),org-policy(policy-priority footprint),org-projects(project list, with search and a capped height),org-partners-esandorg-partners-intl(top Spanish and international partners),org-pillars(breakdown by pillar and thematic priority),org-themes-bubble(participations against net contribution per thematic priority) andorg-schemes(action types). All of them require adata-picattribute with the entity's Participant Identification Code (PIC). - Projects table —
projects-table, the full listing from the Projects page. Besidesdata-filtersit acceptsdata-role(Spanish-role classification: coordination, monobeneficiary, participation) anddata-q(project-name search), the two controls that are page-local in the dashboard. Clicking a row expands the project's detail inside the widget itself, and the listing scrolls continuously instead of paginating, so entities with hundreds of projects do not force page-by-page navigation. It carries its own search box plus status, year, pillar and Spanish-role selects, and a result count; all of them narrow within the set frozen by whoever published the fragment and never widen it: if the widget was embedded already restricted to a status or a search term, a visitor cannot undo that restriction. - Scientific classification —
scivoc-tree, the navigable EuroSciVoc tree: it is browsed inside the widget itself and the figures are recomputed at every level.
18.2 Frozen filters, live data
An embedded widget always reproduces the filtered view as copied — the filters travel frozen in the data-filters attribute, using the same grammar as the dashboard URL — but queries the current CORDIS snapshot: its figures change with each monthly update. To cite a figure from a specific month, use the dashboard itself, noting the snapshot date shown in each widget's footer.
18.3 Entity widgets are lifetime-scoped
The ten org-* widgets ignore data-filters by design, and the drawer's Embed button does not emit it. The reason is consistency with the drawer itself: when an organisation's profile is opened, its figures cover its whole Horizon Europe track record, not the filtered subset shown in the table (the drawer says so explicitly when filters are active). Freezing into the fragment a filter set that the displayed figures never obeyed would produce a widget contradicting what the user copied.
Practical consequence for NCP use: an org-pillars widget embedded in a university's web profile will keep showing its complete pillar breakdown even if the dashboard was filtered by year or by call when it was copied.
Two or more widgets on the same page can be linked with the data-filter-group attribute, so that browsing one — the scientific classification tree, say — narrows the others to the selection. The link narrows and never widens: the selection is added to the filters frozen by whoever published them, which remain the outer boundary, and if that dimension was already frozen the link cannot alter it.
18.4 Widget appearance is pinned
Since V1.4.6 the widgets are styled by their own stylesheet (css/embeds.css) with a frozen palette, both independent of the dashboard's. A dashboard redesign does not repaint widgets already published on third-party pages: their appearance — including chart colours — stays stable until it is explicitly realigned in a later version. This is deliberate: widgets live on pages we do not control and are cited in documents that outlive a restyle.
18.5 Accessibility and titles
Embedded charts carry a text description and an equivalent table, invisible on screen but available to screen readers, so that a block published on an institutional site does not introduce an accessibility barrier into the page hosting it. The snippet produced by the Embed button always includes a data-title attribute, pre-filled with the entity name for single-entity blocks and left empty elsewhere for the publisher to complete if they wish. It lets any widget carry its own heading — particularly useful for single-entity blocks, which on their own do not say who they refer to — and that same title is used for the chart's accessible description and for any exported PNG image.
A widget never modifies the page hosting it: not its declared language, not its styles, not preferences stored in the browser.
18.6 Technical cost
All widgets on a given host page share a single analytics engine instance (DuckDB-WASM) and a single data download (~9 MB, browser-cached): embedding ten widgets costs roughly the same as embedding one. They mount lazily, as they approach the viewport, so a widget at the bottom of a long page does not penalise its initial load. Long lists are height-capped with internal scrolling so they cannot disturb the host page's layout; the projects table additionally loads results in blocks as the user scrolls, rather than fetching them all at once.
18.7 Exporting charts as PNG
Charts, both in the dashboard and in embedded widgets, carry a PNG button that downloads the image at triple resolution, intended for projection and slide decks. The image is not a screen capture: the chart is re-drawn at that density, so text and axes come out sharp.
The caption is drawn into the image rather than placed beside it, and states the data source with European Union ownership, the CORDIS snapshot date, and the dashboard address it came from together with the download date. Below the title it also spells out, in words, the filters active at export time — or states that there were none; charts for a single entity name it and note that the figures are lifetime. Without that, two images of the same chart under different filters would be indistinguishable once pasted into a slide. The reason is practical: the moment a PNG enters a presentation it loses every trace of its origin, and a figure projected in a meeting must remain traceable. When citing an image, check its snapshot date: CORDIS data is refreshed monthly, so an image downloaded six months ago shows figures that no longer match the dashboard.
No raw-data (CSV) export is offered. Figures should be consulted in the dashboard, where they come with their methodological caveats.
19. H2020 data and Combined mode
As of V1.5.0 the dashboard adds, alongside Horizon Europe (2021-2027), the previous Framework Programme — H2020 (2014-2020) — as a second, independent data universe, plus a Combined mode that compares them without merging them into a single figure.
19.1 Source, date, and update policy
H2020 data comes from the same provider (CORDIS, data.europa.eu), snapshot dated 7 August 2026. Unlike Horizon Europe — refreshed every month — H2020 is a programme closed since 2020: its projects no longer receive administrative updates except in rare cases (project closures, Commission-side data corrections). The dashboard treats it accordingly as "near-frozen": published once, with no monthly cadence, reprocessed only if CORDIS issues a meaningful correction to the H2020 export itself — not on every monthly dashboard update. The H2020 snapshot date is shown in the footer of every page and widget that uses it, independently of the Horizon Europe date.
19.2 Coordinator in H2020: same rule, different instruments
The distinction from Section 4 — consortium coordination (2+ signing beneficiaries) versus monobeneficiary (a purely administrative coordinator role) — applies to H2020 unchanged: the same per-project row-count mechanism, the same excluded roles (thirdParty, partner, associatedPartner where applicable, internationalPartner). What differs is which instruments are monobeneficiary in each programme: H2020 predates EIC Accelerator (introduced with Horizon Europe) and instead had the SME Instrument (phases 1 and 2), and its individual fellowships were called MSCA Individual Fellowships (renamed "Postdoctoral Fellowships" under Horizon Europe). As of the 7 August 2026 snapshot, Spanish monobeneficiary coordinations in H2020 concentrate in SME-1 (741 coordinations), MSCA-IF and its variants (1,000+ combined), and the various ERC types (STG/COG/POC/ADG). There is no fundingScheme crosswalk between programmes (see 19.6): comparing the funding-scheme breakdown between HE and H2020 means reading both code lists separately.
Total coordinations (V1.5.0 product decision)
Alongside "Consortium coordinations" (the genuine-leadership figure, §4.1), the Overview and Combined mode also show "Total coordinations": CORDIS's raw role='coordinator' flag, with no consortium condition, counted over distinct projects. It is exactly the sum of "Consortium coordinations" + "Monobeneficiary" — no other combination. It carries no percentage sub-line: unlike "Consortium coordinations" (which has a natural denominator, total projects with Spanish participation), "coordinator of anything, consortium or monobeneficiary" has no equally obvious one.
Pillar/component for Fast Track to Innovation projects (M's decision, 2026-08-18)
85 H2020 projects — every one of them from the Fast Track to Innovation (FTI) instrument, deliberately cross-cutting and without a thematic pillar of its own — arrive from CORDIS with the "main programme part" flag (uniqueProgrammePart) set on the generic H2020-EC code ("Horizon 2020 Framework Programme") instead of a real pillar or component, even though all 85 have at least one thematic alternative row available. The ETL re-points that flag to the most specific alternative whenever there's a clear winner by hierarchy depth — 47 of the 85, e.g. project DeCEMIS moves from H2020-EC to H2020-EU.2.1. (Industrial Leadership). The remaining 38, whose only alternatives are equally specific (no deeper component to tell them apart), are left untouched at H2020-EC — there was no genuinely "more specific" option to choose between. Confirmed exclusive to H2020 — Horizon Europe shows none of this pattern.
19.3 Nominal euros
Every amount — in Horizon Europe, in H2020, and in Combined mode — is expressed in current euros of the signature year, not deflated. A euro of EU contribution signed in 2015 and one signed in 2026 sit on the same axis with no adjustment for inflation or purchasing power. This matters particularly in Combined mode, where the continuous annual series (§19.5) spans up to twelve years between the extremes of H2020 and Horizon Europe: a magnitude comparison between programmes should be read as a comparison of current euros, not constant euros.
19.4 Percentage denominators: "% of ES total" vs. "% of programme"
Combined mode's comparison tables (institutions and regions) publish two percentages per programme and row, with different denominators:
% of ES total — that row's net contribution (an entity, a region) divided by the total Spanish net contribution of that same programme. Answers: "how much weight does this entity/region carry within Spanish participation in H2020 (or Horizon Europe)?"
% of programme — the same row's net contribution, divided by the net contribution of the ENTIRE programme, worldwide (every country, every project, not just the ones with Spanish participation). Answers: "how much weight does this entity/region carry within the whole programme, compared with Germany, France, or any other country?" This figure comes from programme_totals.json, computed over the full source file (organization.xlsx) at the ETL stage, not over the Spanish-participation subset the dashboard loads.
The two figures almost never share an order of magnitude: any Spanish entity's "% of programme" is, by construction, far smaller than its "% of ES total", because the denominator includes the programme's entire worldwide activity, not just Spain's.
19.5 Scope of Combined mode
Combined mode offers exactly four views, reached from the HE | H2020 | Combined header selector: a continuous annual series (2014-2026, both programmes' figures shown separately, never summed into one line), an entity's trajectory across both programmes, and comparison tables for institutions and NUTS-2 regions. No other dashboard page is available in this mode: selecting Combined redirects here, and every other tab is disabled while you stay in it.
Combined mode does not apply the dashboard's global filters (year, pillar, role, entity type, etc.) — all four views always show the full lifetime history of both programmes, the same way a single entity's detail panel already does (§18.3). The reason is the same: the two data universes don't share a filter vocabulary (a Horizon Europe pillar has no literal H2020 equivalent), and freezing a filter the displayed figures won't obey would produce a self-contradicting view.
19.6 Boundaries between programmes: what never mixes
- Project identifiers — H2020 and Horizon Europe grant agreement numbers do not overlap (confirmed against both programmes' real data). The dashboard does not rely on that absence of overlap for convenience: every comparison between the two data universes keys on the pair (programme, identifier), never the identifier alone.
- Programme vocabulary — Horizon Europe's pillar/component codes (
HORIZON.*,EURATOM*) and H2020's (H2020-EU.*,H2020-EC,H2020-Euratom) are disjoint strings by construction; the dashboard automatically checks, on every publish, that neither leaks into the other universe. - Policy priorities — H2020 does not include the policy-priority tracking file (climate, AI, biodiversity…) that Horizon Europe does. The Policy priorities tab on the Topics and Classifications page is hidden in H2020 mode; this is not a bug, it's a table that doesn't exist in the source export.
- EU Missions — Section 17 (topic-based mission identification) likewise has no H2020 equivalent: mission tagging was introduced with Horizon Europe. The Missions tab is similarly restricted to Horizon Europe.
20. Main programme as the funding criterion
This section documents the V1.8.3 methodological change, the one that moved the most published figures in the project's history. If anyone asks why Cluster 3 went from 315 to 140 projects, the answer is here.
20.1 One project, several programme codes
CORDIS does not assign each project a single programme code. It assigns a main part — flagged with the uniqueProgrammePart marker — and, very often, one or more additional secondary codes. On the 7 August 2026 snapshot, 3,129 of the 6,916 projects with Spanish participation (45.2%) carry more than one code.
Until V1.8.2 the dashboard counted a project in every component whose code it carried. Since V1.8.3 it counts it only in its main part. The change affects the pillar and component filters, the distribution charts, the facet counters, the tree on the Topics page and the headline indicators.
20.2 Why the previous criterion was wrong
Counting by any code systematically overstates the small components, because they pick up secondary codes from large projects funded elsewhere. The cross-check against CDTI's February 2026 report (Spanish return, signature years 2021-2024) shows this unambiguously — net EU contribution to Spanish entities, in €M:
| Area | CDTI | Any code | Main programme |
|---|---|---|---|
Cluster 1 Health (HORIZON.2.1) | 425.0 | 432.1 (+1.7%) | 425.6 (+0.1%) |
Cluster 2 Culture (HORIZON.2.2) | 78.8 | 250.2 (+218%) | 79.2 (+0.5%) |
Cluster 3 Security (HORIZON.2.3) | 67.5 | 230.3 (+241%) | 68.3 (+1.2%) |
| Widening and ERA (whole Pillar IV) | 72.6 | 93.1 (+28%) | 74.5 (+2.6%) |
By any code, two of the four areas triple the official figure. By main programme, all four agree within ±2.6%. Note that the last row is the whole pillar, not a component: CDTI's "WIDERA" groups Widening (HORIZON.4.1) and ERA (HORIZON.4.2), and only matches at pillar level.
The double counting is also visible without leaving the dashboard's own data: summing the EU contribution of the six clusters' projects, any code gives €30.7bn against the main programme's €24.6bn — a 25% overstatement that is nothing but the same project counted in several clusters at once.
On an argument we do NOT stand behind
Earlier versions of this project's internal notes justified the change with a second, "independent" proof: that summing by any code exceeded the clusters' seven-year budget and was therefore impossible. That figure does not reproduce against the data the dashboard publishes, and the reasoning was invalid anyway: the dashboard only loads projects with Spanish participation, a fraction of the programme, so summing whole project budgets over that subset is not comparable with a cluster's total budget. The conclusion stands on the CDTI validation and on the measurable double counting; the budget argument is withdrawn.
20.3 What a secondary code means, then
Thematic affinity, not funding source. A Cluster 4 project with a secondary Cluster 3 code has content relevant to security, but its money comes from Cluster 4. Treating that code as funding is what produced the +218% and +241% in the table.
20.4 The trade-off: projects unreachable by theme
A project is now findable only through its main programme. Filtering by Cluster 3 returns 140 projects instead of 315; the other 175 cannot be found by theme at all, even though their content is security work. That is a real loss of exploratory reach, accepted in exchange for the return figures being correct.
An enhancement is foreseen — an opt-in "thematic affinity" filter — which would bring them back for exploration without letting them into the return figures. It is not implemented.
21. Instruments and destinations: the third level of the Theme tree
The "Programme" sub-tab of Topics and Classifications (§9.1) breaks down Pillar > Component > Instrument or destination > Variant. The third and fourth levels are derived from the topic code (V1.8.3), and since V1.8.4 the third is also a sidebar filter, nested under its component.
21.1 Why by topic and not by the level-3 legalBasis codes
CORDIS does publish level-3 legalBasis codes (HORIZON.2.1.1 and the like), and the tree once used them. They are unusable as a breakdown, for three reasons measured against the data: they are never the main programme part (zero of 6,916 projects have a level-3 code flagged uniqueProgrammePart, so they are always affinity labels — see §20.3); their coverage runs from 74% down to 0% (ERC has none at all, MSCA 7 of 2,011, EIC 46 of 339); and EIC was missing the Transition node entirely, so a whole instrument was absent from the tree while "Pathfinder · 26" suggested 26 projects where there are 208. The topic code carries the real breakdown and covers between 71% and 100% depending on the component.
21.2 Two different things, one mechanism
The segment following the year in the topic code means different things depending on the branch:
- ERC, MSCA and EIC — the instrument (Starting Grant, Doctoral Networks, Pathfinder…).
- Clusters — the destination (CARE, TOOL, DISEASE…), which is the taxonomy NCPs actually report against.
Both are extracted the same way; only the labelling differs. The names are not translated: Starting Grant, Pathfinder and Doctoral Networks are used in English throughout the NCP community, and destination codes (CARE, TOOL) are used raw. Only those that say nothing on their own are expanded: Cluster 5 numbers its destinations D1-D6, and the tree adds a short descriptor while keeping the number first, which is how the community refers to them ("D3 projects").
Where the topic distinguishes variants of one instrument (Pathfinder Open vs Pathfinder Challenges), these form a fourth level rather than two sibling nodes. The filter stops at the third: ticking "Pathfinder" includes Open and Challenges.
Compound destination names (V1.8.5). Some destinations span two segments of the code: TWIN-TRANSITION ("Twin green and digital transition"), DIGITAL-EMERGING, HERITAGE-ECCCH, IFMIF-DONES. Until V1.8.4 the tree kept only the first, which did not abbreviate them but mis-named them and, worse, merged distinct destinations: DIGITAL-EMERGING's 129 projects shared a branch with 3 genuinely DIGITAL ones, and HERITAGE-ECCCH's 12 with HERITAGE's 63. They are now read whole, as the ETL already did. Two guards stop the accumulation swallowing what is not part of the name: procedure markers (IBA, ART195, SGA) end it, because they say how a grant was awarded rather than what it funds; and at most two segments are taken, because every real compound destination in the data has exactly two and beyond that the call structure begins (HORIZON-CL4-2023-SSA-SST-STM-AE-ART195 produced, uncapped, ten single-project branches where the Work Programme has one destination). The cap is empirical, not documented by the Commission: it would need revisiting if a real three-segment destination ever appeared.
21.3 Mission projects inside the clusters
A mission project's main part is a cluster — that is where its budget comes from — so it counts towards that cluster's total. But its topic segment belongs to the Missions taxonomy, not the cluster's: showing a bare "OCEAN" next to HERITAGE and DEMOCRACY would read as a fourth Cluster 2 destination, which it is not. The tree therefore labels it as the mission it is, inside the cluster. This affects 273 projects across four clusters. The patterns come from §17's canonical mapping, not a second copy.
A joint call can belong to two missions (§17.2). That is right for a filter but impossible in a tree, where a project sitting in two branches would break every subtotal. One such topic exists today, and the first matching mission wins: an arbitrary tie-break, not a judgement about the project.
21.4 The instrument filter and its precedence
The instrument filter (V1.8.4) lives inside the sidebar's Theme tree, as a third level under its component, and offers 13 instruments across the three components that have a breakdown (ERC 5, MSCA 5, EIC 3). Every other component ends at level 2, with no caret.
It follows the same precedence rule as the pillar/component pair, one level down: a ticked instrument supersedes a ticked component or pillar rather than adding to it. Ticking "Cluster 4" and "Starting Grant" returns Starting Grant, just as ticking "Pillar I" and "Cluster 4" returns Cluster 4. The reason is that an instrument is fully contained within its component, so the precedence never discards anything the broader selection would have added.
It is Horizon Europe only: H2020 topic codes carry no equivalent taxonomy, so the parameter is dropped on a programme switch, as happens with mission and priority.
21.5 Coverage: what the filter does not reach
The tree shows any segment appearing in the topic, catalogued or not. The filter offers only the catalogued ones. The difference is residual single-call instruments: on the 7 August 2026 snapshot, 22 of the 2,928 projects in ERC+MSCA+EIC (0.8%) match no instrument in the catalogue — EIC BOOSTER (5), STARTUPEU (2) and eleven singletons; ERC SJI and NCPS; MSCA NCP, RR and ESP. They appear in the tree under their raw code, with no filter entry.
If CORDIS introduces a new instrument, it would appear in the tree and be invisible to the filter. An automated check (§16.3, check [10b]) measures that gap on every publish and warns above 5%, reading the patterns from the catalogue itself so the two cannot diverge.