Organogram Of Staff Roles & Salaries
Environment Agency
@ukgov.organogram_environment_agency
Environment Agency
@ukgov.organogram_environment_agency
Organogram (organisation chart) showing all staff roles. Names and salaries are also listed for the Senior Civil Servants. Organogram data is released by all central government departments and their agencies since 2010. Snapshots for 31st March, 30th June, 30th September and 31 December will be published. The published data is validated and released in CSV format and OGL-licensed for reuse. For more information about this series, see: http://guidance.data.gov.uk/organogram-data.html
Publisher name: Environment Agency
Last updated: 2025-04-30T04:00:21Z
CREATE TABLE n_2019_03_31_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" VARCHAR -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" BIGINT -- Actual Pay Floor (£),
"actual_pay_ceiling" BIGINT -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2019_09_30_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" BIGINT -- Payscale Minimum (£),
"payscale_maximum" BIGINT -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" DOUBLE,
"professional_occupational_group" VARCHAR
);CREATE TABLE n_2019_09_30_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" VARCHAR -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" BIGINT -- Actual Pay Floor (£),
"actual_pay_ceiling" BIGINT -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2020_09_30_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" BIGINT -- Payscale Minimum (£),
"payscale_maximum" BIGINT -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" DOUBLE,
"professional_occupational_group" VARCHAR
);CREATE TABLE n_2020_09_30_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" VARCHAR -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" VARCHAR -- Actual Pay Floor (£),
"actual_pay_ceiling" VARCHAR -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2021_03_31_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" BIGINT -- Payscale Minimum (£),
"payscale_maximum" BIGINT -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" DOUBLE,
"professional_occupational_group" VARCHAR
);CREATE TABLE n_2021_03_31_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" VARCHAR -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" VARCHAR -- Actual Pay Floor (£),
"actual_pay_ceiling" VARCHAR -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2021_09_30_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" BIGINT -- Payscale Minimum (£),
"payscale_maximum" BIGINT -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" DOUBLE,
"professional_occupational_group" VARCHAR
);CREATE TABLE n_2021_09_30_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" VARCHAR -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" VARCHAR -- Actual Pay Floor (£),
"actual_pay_ceiling" VARCHAR -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2021_12_31_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" BIGINT -- Payscale Minimum (£),
"payscale_maximum" BIGINT -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" DOUBLE,
"professional_occupational_group" VARCHAR,
"office_region" VARCHAR
);CREATE TABLE n_2021_12_31_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" BIGINT -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" VARCHAR -- Actual Pay Floor (£),
"actual_pay_ceiling" VARCHAR -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"office_region" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2022_03_31_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" BIGINT -- Payscale Minimum (£),
"payscale_maximum" BIGINT -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" VARCHAR,
"professional_occupational_group" VARCHAR,
"office_region" VARCHAR
);CREATE TABLE n_2022_03_31_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" BIGINT -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" VARCHAR -- Actual Pay Floor (£),
"actual_pay_ceiling" VARCHAR -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"office_region" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2022_06_30_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" BIGINT -- Payscale Minimum (£),
"payscale_maximum" BIGINT -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" VARCHAR,
"professional_occupational_group" VARCHAR,
"office_region" VARCHAR
);CREATE TABLE n_2022_06_30_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" BIGINT -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" VARCHAR -- Actual Pay Floor (£),
"actual_pay_ceiling" VARCHAR -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"office_region" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2022_09_30_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" BIGINT -- Payscale Minimum (£),
"payscale_maximum" BIGINT -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" VARCHAR,
"professional_occupational_group" VARCHAR,
"office_region" VARCHAR
);CREATE TABLE n_2022_09_30_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" BIGINT -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" VARCHAR -- Actual Pay Floor (£),
"actual_pay_ceiling" VARCHAR -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"office_region" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2022_12_31_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" BIGINT -- Payscale Minimum (£),
"payscale_maximum" BIGINT -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" VARCHAR,
"professional_occupational_group" VARCHAR,
"office_region" VARCHAR
);CREATE TABLE n_2022_12_31_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" BIGINT -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" VARCHAR -- Actual Pay Floor (£),
"actual_pay_ceiling" VARCHAR -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"office_region" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2023_03_31_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" BIGINT -- Payscale Minimum (£),
"payscale_maximum" BIGINT -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" VARCHAR,
"professional_occupational_group" VARCHAR,
"office_region" VARCHAR
);CREATE TABLE n_2023_03_31_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" BIGINT -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" VARCHAR -- Actual Pay Floor (£),
"actual_pay_ceiling" VARCHAR -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"office_region" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2023_06_30_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" BIGINT -- Payscale Minimum (£),
"payscale_maximum" BIGINT -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" VARCHAR,
"professional_occupational_group" VARCHAR,
"office_region" VARCHAR
);CREATE TABLE n_2023_06_30_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" BIGINT -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" VARCHAR -- Actual Pay Floor (£),
"actual_pay_ceiling" VARCHAR -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"office_region" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2023_09_30_organogram_junior (
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"reporting_senior_post" VARCHAR,
"grade" VARCHAR,
"payscale_minimum" BIGINT -- Payscale Minimum (£),
"payscale_maximum" BIGINT -- Payscale Maximum (£),
"generic_job_title" VARCHAR,
"number_of_posts_in_fte" VARCHAR,
"professional_occupational_group" VARCHAR,
"office_region" VARCHAR
);CREATE TABLE n_2023_09_30_organogram_senior (
"post_unique_reference" VARCHAR,
"name" VARCHAR,
"grade_or_equivalent" VARCHAR -- Grade (or Equivalent),
"job_title" VARCHAR,
"job_team_function" VARCHAR,
"parent_department" VARCHAR,
"organisation" VARCHAR,
"unit" VARCHAR,
"contact_phone" VARCHAR,
"contact_e_mail" VARCHAR,
"reports_to_senior_post" VARCHAR,
"salary_cost_of_reports" BIGINT -- Salary Cost Of Reports (£),
"fte" DOUBLE,
"actual_pay_floor" VARCHAR -- Actual Pay Floor (£),
"actual_pay_ceiling" VARCHAR -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"office_region" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);Anyone who has the link will be able to view this.