Organogram Of Staff Roles & Salaries
Transport Focus
@ukgov.organogram_transport_focus
Transport Focus
@ukgov.organogram_transport_focus
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 and 30th September are published by 6th June and 6th December each year. 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: Transport Focus
Last updated: 2025-05-01T04:00:20Z
CREATE TABLE n_2023_10_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" BIGINT -- Actual Pay Floor (£),
"actual_pay_ceiling" BIGINT -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"office_region" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2024_01_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_2024_01_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" BIGINT -- Actual Pay Floor (£),
"actual_pay_ceiling" BIGINT -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"office_region" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2024_04_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_2024_04_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" BIGINT -- Actual Pay Floor (£),
"actual_pay_ceiling" BIGINT -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"office_region" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2024_07_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_2024_07_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" BIGINT -- Actual Pay Floor (£),
"actual_pay_ceiling" BIGINT -- Actual Pay Ceiling (£),
"unnamed_15" VARCHAR -- Unnamed: 15,
"professional_occupational_group" VARCHAR,
"office_region" VARCHAR,
"notes" VARCHAR,
"valid" BIGINT -- Valid?
);CREATE TABLE n_2024_10_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_2024_10_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_2025_01_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_2025_01_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_2025_04_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_2025_04_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 organogram_of_staff_roles_salaries (
"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" 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 table_29 (
"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" 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 table_9 (
"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
);Anyone who has the link will be able to view this.