Nacional FEGA — Ministerio de Agricultura, Pesca y Alimentación

FEGA — Beneficiarios de ayudas de la PAC

Publicación oficial de quién recibe los fondos agrícolas europeos FEAGA y Feader en España: beneficiario, municipio, medida e importe pagado en cada ejercicio financiero. Buscador web y descarga completa en ZIP por ejercicio.

Ficha técnica

Formato
ZIP con TXT delimitado por ; (ISO-8859-1)
Registros
~2,1M pagos / ~593.000 beneficiarios (ejercicio 2025)
Cobertura
Los dos últimos ejercicios financieros (hoy, 2024 y 2025)
Actualización
Anual (mayo-junio)
Licencia
Reutilización libre citando la fuente (aviso legal del FEGA, Ley 37/2007)
Entidad
FEGA — Ministerio de Agricultura, Pesca y Alimentación

Descripción

El Fondo Español de Garantía Agraria (FEGA), organismo autónomo del Ministerio de Agricultura, Pesca y Alimentación, publica cada año la relación de beneficiarios de los dos fondos agrícolas europeos: el FEAGA (pagos directos y medidas de mercado) y el Feader (desarrollo rural). Es una obligación de transparencia que fijan los artículos 98 a 100 del Reglamento (UE) 2021/2116 y los artículos 58 a 62 del Reglamento de Ejecución (UE) 2022/128, y abarca a todos los organismos pagadores, tanto de las comunidades autónomas como del Estado.

Cada fila es un pago por beneficiario y operación dentro de un ejercicio financiero, que va del 16 de octubre del año anterior al 15 de octubre. Incluye el nombre o la razón social, el grupo empresarial al que pertenece (con el NIF de la matriz), la provincia y el municipio, la medida o tipo de intervención, el objetivo específico de la PAC, las fechas de las operaciones plurianuales y el desglose del importe entre FEAGA, Feader y cofinanciación nacional. No se publica el NIF del beneficiario. Además del buscador web, el FEGA ofrece un ZIP con el fichero completo de cada ejercicio; como el nombre del fichero cambia de un año a otro, conviene partir siempre de la página de descarga.

Por ley, los datos solo pueden consultarse durante dos años desde su publicación: cada primavera entra un ejercicio nuevo y sale el más antiguo, así que quien quiera una serie histórica tiene que guardar los ficheros. A quien cobra 1.250 euros o menos en el ejercicio no se le identifica por el nombre, sino por un código (ES#00001698), y si además vive en un municipio con diez beneficiarios o menos, el municipio aparece enmascarado a nivel de provincia (08XXX - XXXXX). Los importes negativos son reintegros y sanciones. Al tratarse de datos personales, su reutilización debe respetar la normativa de protección de datos.

Estructura de datos

  • BENEFICIARIO — Nombre y apellidos o razón social; código ES#nnnnnnnn si cobró 1.250 euros o menos
  • GRUPO_EMPRESA — NIF y nombre de la empresa matriz ("-" si no pertenece a un grupo)
  • PROVINCIA — Provincia de residencia o domicilio social
  • MUNICIPIO — Código INE y nombre del municipio (PPXXX - XXXXX si está enmascarado)
  • MEDIDA — Código y nombre de la medida o tipo de intervención (I.1 Ayuda básica a la renta, V.1 Compromisos medioambientales...)
  • OBJETIVO_ESP — Objetivos específicos de la PAC, separados por | (OE1|OE6)
  • FEC_INI / FEC_FIN — Inicio y fin de la operación (solo operaciones plurianuales, dd/mm/aaaa)
  • FEAGA — Importe con cargo al FEAGA (coma decimal)
  • FEADER — Importe con cargo al Feader
  • IMPORTECOFIN — Cofinanciación nacional de la parte Feader
  • FEADER_COFIN — Feader más cofinanciación
  • IMPORTE_EUROS — Importe total pagado en el ejercicio (negativo en reintegros)

Ejemplos de código

Descargar el ejercicio 2025 y ver la cabecera curl
URL="https://www.fega.gob.es/sites/default/files/files/document/Beneficiarios_municipio_ejercicio_financiero-2025.zip"

# Comprobar tamaño y fecha sin descargar
curl -sI "$URL" | grep -iE "content-length|last-modified"

# Descargar (~35 MB) y ver las primeras filas convertidas a UTF-8
curl -sL -o pac_2025.zip "$URL"
unzip -p pac_2025.zip | iconv -f ISO-8859-1 -t UTF-8 | head -5
Importe total por provincia python
import csv
import io
import zipfile
from collections import defaultdict
from urllib.request import urlretrieve

URL = ('https://www.fega.gob.es/sites/default/files/files/document/'
       'Beneficiarios_municipio_ejercicio_financiero-2025.zip')
urlretrieve(URL, 'pac_2025.zip')

total_por_provincia = defaultdict(float)
with zipfile.ZipFile('pac_2025.zip') as z:
    nombre = z.namelist()[0]  # un único .txt dentro del ZIP
    with z.open(nombre) as raw:
        texto = io.TextIOWrapper(raw, encoding='latin-1', newline='')
        for fila in csv.DictReader(texto, delimiter=';'):
            importe = float(fila['IMPORTE_EUROS'].replace(',', '.') or 0)
            total_por_provincia[fila['PROVINCIA']] += importe

for prov, total in sorted(total_por_provincia.items(), key=lambda x: -x[1])[:10]:
    print(f'{prov:<25} {total:>18,.2f} EUR')
Mayores perceptores identificados (awk) bash
# Suma IMPORTE_EUROS por beneficiario, excluye los anonimizados (ES#...)
unzip -p pac_2025.zip | iconv -f ISO-8859-1 -t UTF-8 \
  | LC_ALL=C awk -F';' 'NR>1 && $1 !~ /^ES#/ {gsub(",",".",$13); t[$1]+=$13}
      END {for (b in t) printf "%.2f\t%s\n", t[b], b}' \
  | LC_ALL=C sort -rn | head -20