Skip to main content

What is training data?

Training data records the professional development activities completed by your employees. This includes any structured learning activity such as safety courses, technical certifications, language classes, leadership programs, or compliance training. Under ESRS S1, organizations must disclose the average number of training hours per employee, broken down by gender and job category. This data helps demonstrate your investment in employee development and upskilling.

Why is it needed?

Training metrics are a key indicator of how organizations invest in their workforce. Sustainability reports typically require:
  • Total training hours across the organization
  • Average training hours per employee (total hours / headcount)
  • Training hours by gender to show equitable access to development
  • Training by type to categorize investment areas (safety, technical, etc.)

Data structure

Training records are linked to employees via the External Employee ID. Each training record is independent — an employee can have multiple trainings.
EMPLOYEE (EMP001)
  |
  +-- TRAINING: Safety course (8h, Jan 15-16, 2024)
  +-- TRAINING: Technical certification (40h, Mar 1-31, 2024)
  +-- TRAINING: Leadership workshop (16h, Sep 10-12, 2024)
Employees must already exist in the system before you can upload their training records. Upload contract data first, then trainings.

CSV format

ColumnTypeRequiredDescriptionExample
external_employee_idStringYesThe employee’s ID (must match an existing employee)EMP001
hoursDecimalYesTotal training hours (must be >= 0)8.0
start_dateDateYesWhen the training started (YYYY-MM-DD)2024-01-15
end_dateDateYesWhen the training ended (must be >= start_date)2024-01-16
descriptionStringYesName or description of the trainingWorkplace Safety Certification
typeStringYesCategory of the trainingsafety

Training types

You can use any string value for the training type. Common categories include:
TypeDescription
safetyHealth and safety training (e.g., fire drills, PPE usage)
technicalJob-specific technical skills (e.g., software, machinery)
complianceRegulatory compliance (e.g., data protection, anti-corruption)
leadershipManagement and leadership development
languagesLanguage courses
onboardingNew employee induction programs
otherAny other training type
Training types are free-text fields — you can use any value that makes sense for your organization. The values listed above are suggestions.

Example CSV

external_employee_id,hours,start_date,end_date,description,type
EMP001,8.0,2024-01-15,2024-01-16,Workplace Safety Certification,safety
EMP001,40.0,2024-03-01,2024-03-31,Advanced Python Development,technical
EMP002,16.0,2024-02-10,2024-02-12,Leadership Workshop,leadership
EMP003,4.0,2024-04-05,2024-04-05,GDPR Compliance Refresher,compliance
EMP002,8.0,2024-06-01,2024-06-01,Fire Safety Drill,safety
EMP005,24.0,2024-05-01,2024-05-03,UX Design Masterclass,technical

How to upload

1

Go to Data > Workforce > Trainings

Navigate to the Workforce section and select the Trainings tab.
2

Click Upload

Click the Upload button to open the data import interface.
3

Import your data

Paste from a spreadsheet, upload a CSV/Excel file, or enter data manually. The importer maps your columns to the expected fields.
4

Review and confirm

The importer validates that:
  • Each external_employee_id matches an existing employee
  • Hours are a valid positive number
  • End date is on or after start date
  • All required fields are filled
Fix any errors, then confirm the upload.

Viewing training data

Training list

The training list shows all uploaded training records with:
  • Employee ID: Which employee completed the training
  • Description: Training name/description
  • Type: Training category
  • Hours: Duration in hours
  • Dates: Start and end dates
  • Upload source: Which file the record came from
You can search by Employee ID or description and filter by:
  • Upload file
  • Upload date range

Employee detail view

From the employee detail page, the Trainings section shows all trainings for that specific employee in chronological order.

How it appears in reports

Training data feeds into these report metrics:
MetricCalculationDescription
Total training hoursSum of all training hoursOrganization-wide investment in training
Avg. training hours per employeeTotal hours / HeadcountPer-capita training metric
Training hours by genderHours grouped by employee genderEquity in training access
Training hours by categoryHours grouped by employment categoryDistribution across job levels
Training hours are prorated in reports when a training spans multiple months. For example, a 20-hour training from March 15 to April 15 would allocate approximately 10 hours to March and 10 hours to April based on the number of days in each month.

Frequently asked questions

Yes. The external_employee_id in each training record must match an employee already uploaded through the contracts upload. If the employee doesn’t exist, the training record will be rejected.
Yes. Create one row per employee per training. If 10 employees attended the same 8-hour workshop, you’d have 10 rows in your CSV, each with a different external_employee_id but the same description, type, hours, and dates.
Set the hours field to the actual hours of instruction, not the calendar duration. For example, a course running 2 hours per day over 5 days would have hours: 10, start_date: 2024-01-06, end_date: 2024-01-10.
Use the filter to select records from a specific upload file, then use the bulk delete option to remove all records from that file.