Payroll & compensation
======================

Monthly payroll for a 900-person Indian company across two financial years: departments, salary bands, employees, payslips with the statutory deductions (PF, professional tax, TDS), and the annual bonus. Increments land every April; people who leave stop appearing on payroll.

Category: HR
Licence: CC0-1.0
Synthetic data generated by DataStride. Places and calendars are real; people are fictional. Tax figures are simplified for teaching.
Build: 940aea8e3b2c8169

pay_departments (12 rows)
  dept_id                INTEGER        [key] Department identifier.
  dept_name              VARCHAR(40)    Department.
  cost_centre            VARCHAR(10)    Cost centre code.

pay_salary_bands (10 rows)
  band_code              VARCHAR(4)     [key] Band.
  min_ctc                DECIMAL(12,2)  Band minimum, annual CTC, INR.
  max_ctc                DECIMAL(12,2)  Band maximum, annual CTC, INR.

pay_employees (900 rows)
  emp_id                 INTEGER        [key] Employee number.
  full_name              VARCHAR(80)    Employee (fictional).
  gender                 VARCHAR(10)    Self-reported gender.
  dept_id                INTEGER        -> pay_departments.dept_id Department.
  band_code              VARCHAR(4)     -> pay_salary_bands.band_code Salary band.
  work_city              VARCHAR(40)    Office location.
  joined_on              DATE           Joining date.
  left_on                DATE           Last working day; null if still employed.
  annual_ctc             DECIMAL(12,2)  Current annual cost to company, INR.

pay_payslips (5000 rows)
  payslip_id             INTEGER        [key] Payslip identifier.
  emp_id                 INTEGER        -> pay_employees.emp_id Employee paid.
  pay_month              VARCHAR(7)     Month paid, YYYY-MM. Only months the employee was on payroll.
  gross_pay              DECIMAL(12,2)  Monthly gross salary, INR.
  pf_employee            DECIMAL(10,2)  Provident Fund, 12% of basic, capped.
  professional_tax       DECIMAL(8,2)   Professional tax (simplified slab).
  tds                    DECIMAL(10,2)  Income tax deducted at source (simplified, new regime).
  net_pay                DECIMAL(12,2)  Take-home pay, INR.

pay_bonuses (600 rows)
  bonus_id               INTEGER        [key] Bonus identifier.
  emp_id                 INTEGER        -> pay_employees.emp_id Employee rewarded.
  fiscal_year            VARCHAR(10)    Year the bonus is for.
  rating                 INTEGER        Performance rating, 1–5.
  bonus_amount           DECIMAL(12,2)  Bonus paid, INR.

Deliberate data-quality quirks (clean them before you aggregate):
  pay_employees.gender: mixed case
