{
  "format": "dataset-manifest/1",
  "slug": "employee-payroll-management-system",
  "version": 4,
  "seed": "employee-payroll-management-system:1",
  "engine": 1,
  "engineVersion": "1.0.0",
  "spec": {
    "format": "dataset/1",
    "slug": "employee-payroll-management-system",
    "name": "Employee Payment Insights",
    "tagline": "Employee payroll, attendance, performance reviews, and department data from an organizational HR system.",
    "description": "In any organization, managing employee compensation and benefits is crucial for maintaining morale and productivity. This dataset focuses on essential aspects like payroll transactions, attendance records, and performance reviews, ensuring a comprehensive view of employee status and engagement. The data is synthetic and designed to simulate real-world scenarios within an HR context. The tables include payroll transactions detailing employee payments, attendance records tracking presence, and performance reviews assessing employee contributions. Each table is interrelated, allowing for insights into how attendance and performance impact payroll. Questions such as how attendance affects payment, or trends in performance reviews can be explored with this data. This dataset is good for practicing SQL queries and ORM seeding, offering a variety of columns for diverse analysis.",
    "domain": "hr",
    "shape": "transactional",
    "useCases": [
      "sql-practice",
      "orm-seeding"
    ],
    "keywords": [
      "employee payroll",
      "attendance records",
      "performance reviews",
      "HR data",
      "employee compensation"
    ],
    "locale": "en",
    "license": "CC0-1.0",
    "version": 1,
    "tables": {
      "employees": {
        "description": "This table contains basic employee information, linking to payroll and attendance records. Each entry represents an individual employee.",
        "rows": 200,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each employee."
          },
          "first_name": {
            "kind": "firstName",
            "description": "The employee's first name."
          },
          "last_name": {
            "kind": "lastName",
            "description": "The employee's last name."
          },
          "email": {
            "kind": "email",
            "from": [
              "first_name",
              "last_name"
            ],
            "description": "Employee's email address."
          },
          "department": {
            "kind": "enum",
            "values": [
              "HR",
              "IT",
              "Finance",
              "Sales",
              "Marketing"
            ],
            "description": "Department where the employee works.",
            "weights": [
              5,
              4,
              3,
              2,
              1
            ]
          }
        }
      },
      "payroll": {
        "description": "This table records payroll transactions for employees, linking back to the employees table. Each row represents a payment made to an employee.",
        "rows": 500,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each payroll transaction."
          },
          "employee_id": {
            "kind": "fk",
            "ref": "employees.id",
            "description": "Employee associated with the payroll transaction."
          },
          "amount": {
            "kind": "decimal",
            "min": 2000,
            "max": 10000,
            "scale": 2,
            "description": "Amount paid to the employee.",
            "distribution": "long-tail"
          },
          "payment_date": {
            "kind": "date",
            "from": "2023-01-01",
            "to": "2023-12-31",
            "description": "Date the payment was made.",
            "trend": "growing"
          },
          "payment_method": {
            "kind": "enum",
            "values": [
              "direct deposit",
              "check",
              "cash"
            ],
            "weights": [
              70,
              20,
              10
            ],
            "description": "Method used for the payroll payment."
          },
          "tax_withheld": {
            "kind": "decimal",
            "min": 200,
            "max": 1500,
            "distribution": "normal",
            "description": "Amount of tax withheld from the payment."
          }
        }
      },
      "attendance": {
        "description": "This table tracks employee attendance, linking to the employees table. Each record indicates presence or absence on a specific date.",
        "rows": 600,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each attendance record."
          },
          "employee_id": {
            "kind": "fk",
            "ref": "employees.id",
            "description": "Employee whose attendance is recorded."
          },
          "attendance_date": {
            "kind": "date",
            "from": "2023-01-01",
            "to": "2023-12-31",
            "description": "Date of attendance."
          },
          "status": {
            "kind": "enum",
            "values": [
              "Present",
              "Absent",
              "Leave"
            ],
            "description": "Employee's attendance status on the date.",
            "weights": [
              7,
              2,
              1
            ]
          },
          "hours_worked": {
            "kind": "int",
            "min": 0,
            "max": 24,
            "distribution": "normal",
            "description": "Number of hours worked on the attendance date."
          },
          "overtime_hours": {
            "kind": "int",
            "min": 0,
            "max": 10,
            "distribution": "normal",
            "description": "Number of overtime hours worked on the attendance date."
          }
        }
      },
      "performance_reviews": {
        "description": "This table contains performance review data for employees, linking back to the employees table. Reviews are conducted periodically.",
        "rows": 200,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each performance review."
          },
          "employee_id": {
            "kind": "fk",
            "ref": "employees.id",
            "description": "Employee who is being reviewed."
          },
          "review_date": {
            "kind": "date",
            "from": "2023-01-01",
            "to": "2023-12-31",
            "description": "Date of the performance review.",
            "trend": "seasonal"
          },
          "score": {
            "kind": "int",
            "min": 1,
            "max": 5,
            "description": "Score given in the review.",
            "distribution": "high"
          },
          "comments": {
            "kind": "sentence",
            "max": 250,
            "description": "Comments from the reviewer about the employee's performance."
          }
        }
      },
      "departments": {
        "description": "This table contains information about departments within the organization, linking to employees for department categorization.",
        "rows": 5,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each department."
          },
          "name": {
            "kind": "enum",
            "values": [
              "HR",
              "IT",
              "Finance",
              "Sales",
              "Marketing"
            ],
            "description": "Name of the department."
          },
          "manager": {
            "kind": "fullName",
            "description": "Full name of the department manager."
          },
          "budget": {
            "kind": "decimal",
            "min": 50000,
            "max": 500000,
            "distribution": "long-tail",
            "description": "Annual budget allocated to the department."
          },
          "employee_count": {
            "kind": "int",
            "min": 1,
            "max": 50,
            "distribution": "normal",
            "description": "Number of employees in the department."
          }
        }
      }
    },
    "structure": "multi-table",
    "traits": [
      "categorical",
      "timestamped",
      "nullable"
    ],
    "analysisQuestions": [
      "How does attendance impact employee performance ratings?",
      "What is the average payroll amount per department?",
      "Which department has the highest attendance rate?",
      "Are there any trends in performance scores over the year?",
      "How often do employees take leave compared to their total attendance?"
    ],
    "suggestedQueries": [
      {
        "title": "Join Employees and Payroll",
        "sql": "SELECT e.first_name, e.last_name, p.amount FROM employees e JOIN payroll p ON e.id = p.employee_id;",
        "dialect": "postgres"
      },
      {
        "title": "Average Payment per Department",
        "sql": "SELECT d.name, AVG(p.amount) AS average_payment FROM payroll p JOIN employees e ON p.employee_id = e.id JOIN departments d ON e.department = d.name GROUP BY d.name;",
        "dialect": "postgres"
      },
      {
        "title": "Attendance Summary",
        "sql": "SELECT employee_id, COUNT(*) AS total_days, SUM(CASE WHEN status = 'Absent' THEN 1 ELSE 0 END) AS absent_days FROM attendance GROUP BY employee_id;",
        "dialect": "postgres"
      },
      {
        "title": "Performance Trends",
        "sql": "SELECT employee_id, AVG(score) AS average_score FROM performance_reviews GROUP BY employee_id ORDER BY average_score DESC;",
        "dialect": "postgres"
      },
      {
        "title": "Attendance Impact on Payroll",
        "sql": "SELECT a.employee_id, SUM(p.amount) AS total_payment FROM payroll p JOIN attendance a ON p.employee_id = a.employee_id WHERE a.status = 'Present' GROUP BY a.employee_id;",
        "dialect": "postgres"
      }
    ],
    "usageScenarios": [
      {
        "title": "HR Analysis",
        "body": "HR professionals can utilize this dataset to analyze payroll trends, attendance patterns, and performance reviews. By understanding how these elements interrelate, HR can make informed decisions on employee engagement and compensation strategies."
      },
      {
        "title": "Performance Management",
        "body": "Managers can leverage this data to assess employee performance over time, identifying high performers and those who may need additional support. Combining performance reviews with attendance records can provide insights into employee productivity."
      },
      {
        "title": "Payroll Processing",
        "body": "Payroll departments can use this dataset to ensure accurate payment processing based on attendance and performance. By analyzing payroll data alongside attendance, they can identify discrepancies and address potential issues before payments are made."
      },
      {
        "title": "Training and Development",
        "body": "Training coordinators can analyze attendance and performance data to determine training needs. Identifying employees with high absence rates or low performance scores may reveal opportunities for targeted development programs."
      }
    ]
  },
  "counts": {
    "departments": 5,
    "employees": 200,
    "attendance": 600,
    "payroll": 500,
    "performance_reviews": 200
  },
  "stats": {
    "employees": {
      "rows": 200,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "first_name": {
          "nulls": 0,
          "distinct": 73,
          "min": "Alice",
          "max": "Zoe"
        },
        "last_name": {
          "nulls": 0,
          "distinct": 70,
          "min": "Adams",
          "max": "Zhang"
        },
        "email": {
          "nulls": 0,
          "distinct": 200
        },
        "department": {
          "nulls": 0,
          "distinct": 5,
          "min": "Finance",
          "max": "Sales"
        }
      }
    },
    "payroll": {
      "rows": 500,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 500,
          "min": 1,
          "max": 500
        },
        "employee_id": {
          "nulls": 0,
          "distinct": 185,
          "min": 1,
          "max": 200
        },
        "amount": {
          "nulls": 0,
          "distinct": 500,
          "min": 2000.08,
          "max": 9977.49
        },
        "payment_date": {
          "nulls": 0,
          "distinct": 274,
          "min": "2023-01-01",
          "max": "2023-12-30"
        },
        "payment_method": {
          "nulls": 0,
          "distinct": 3,
          "min": "cash",
          "max": "direct deposit"
        },
        "tax_withheld": {
          "nulls": 0,
          "distinct": 499,
          "min": 268.32,
          "max": 1383.72
        }
      }
    },
    "attendance": {
      "rows": 600,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 600,
          "min": 1,
          "max": 600
        },
        "employee_id": {
          "nulls": 0,
          "distinct": 189,
          "min": 1,
          "max": 200
        },
        "attendance_date": {
          "nulls": 0,
          "distinct": 295,
          "min": "2023-01-01",
          "max": "2023-12-31"
        },
        "status": {
          "nulls": 0,
          "distinct": 3,
          "min": "Absent",
          "max": "Present"
        },
        "hours_worked": {
          "nulls": 0,
          "distinct": 22,
          "min": 1,
          "max": 22
        },
        "overtime_hours": {
          "nulls": 0,
          "distinct": 9,
          "min": 1,
          "max": 9
        }
      }
    },
    "performance_reviews": {
      "rows": 200,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "employee_id": {
          "nulls": 0,
          "distinct": 119,
          "min": 3,
          "max": 200
        },
        "review_date": {
          "nulls": 0,
          "distinct": 146,
          "min": "2023-01-02",
          "max": "2023-12-30"
        },
        "score": {
          "nulls": 0,
          "distinct": 5,
          "min": 1,
          "max": 5
        },
        "comments": {
          "nulls": 0,
          "distinct": 200
        }
      }
    },
    "departments": {
      "rows": 5,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 5,
          "min": 1,
          "max": 5
        },
        "name": {
          "nulls": 0,
          "distinct": 3,
          "min": "HR",
          "max": "Sales"
        },
        "manager": {
          "nulls": 0,
          "distinct": 5,
          "min": "Alice Andersen",
          "max": "Tariq Novak"
        },
        "budget": {
          "nulls": 0,
          "distinct": 5,
          "min": 51725.89,
          "max": 443776.26
        },
        "employee_count": {
          "nulls": 0,
          "distinct": 5,
          "min": 20,
          "max": 29
        }
      }
    }
  },
  "artifacts": [
    {
      "file": "csv/departments.csv",
      "format": "csv",
      "table": "departments",
      "key": "datasets/employee-payroll-management-system/v4/csv/departments.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/employee-payroll-management-system/v4/csv/departments.csv",
      "bytes": 219,
      "sha256": "cf8f47ac9dcd11e8a972553bcc492d2b2e4c96db6cee97f1d79aae58f8673c4e",
      "rows": 5,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/employees.csv",
      "format": "csv",
      "table": "employees",
      "key": "datasets/employee-payroll-management-system/v4/csv/employees.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/employee-payroll-management-system/v4/csv/employees.csv",
      "bytes": 9148,
      "sha256": "67394c0bdefc78cedc8320f7af98c4b33c11eb214825d23c40b16874fd9ec267",
      "rows": 200,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/attendance.csv",
      "format": "csv",
      "table": "attendance",
      "key": "datasets/employee-payroll-management-system/v4/csv/attendance.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/employee-payroll-management-system/v4/csv/attendance.csv",
      "bytes": 19071,
      "sha256": "e2bad257fa72356fb3cdeaa5b1e74faf54e8bed87deea3cd701fb6f6d6698d17",
      "rows": 600,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/payroll.csv",
      "format": "csv",
      "table": "payroll",
      "key": "datasets/employee-payroll-management-system/v4/csv/payroll.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/employee-payroll-management-system/v4/csv/payroll.csv",
      "bytes": 23449,
      "sha256": "6da8738ba33d8016078a41e49e2f645f722e5b0c70ca73b456a20214838c3e1c",
      "rows": 500,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/performance_reviews.csv",
      "format": "csv",
      "table": "performance_reviews",
      "key": "datasets/employee-payroll-management-system/v4/csv/performance_reviews.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/employee-payroll-management-system/v4/csv/performance_reviews.csv",
      "bytes": 15665,
      "sha256": "58ea2656561583af44294e2e882988c40fd9665bf0fcbe0017027bf5a1f58940",
      "rows": 200,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "employee-payroll-management-system.json",
      "format": "json",
      "table": null,
      "key": "datasets/employee-payroll-management-system/v4/employee-payroll-management-system.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/employee-payroll-management-system/v4/employee-payroll-management-system.json",
      "bytes": 264717,
      "sha256": "d787ddacd6324212a7144062269d161d327091529f25e34f9c57a58fdcdebae3",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    },
    {
      "file": "sql/postgres.sql",
      "format": "sql-postgres",
      "table": null,
      "key": "datasets/employee-payroll-management-system/v4/sql/postgres.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/employee-payroll-management-system/v4/sql/postgres.sql",
      "bytes": 93615,
      "sha256": "c9158cf1cdb6324a91abafee70d48597abc3aed5ec9294336e5d67daf1ceceec",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mysql.sql",
      "format": "sql-mysql",
      "table": null,
      "key": "datasets/employee-payroll-management-system/v4/sql/mysql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/employee-payroll-management-system/v4/sql/mysql.sql",
      "bytes": 93024,
      "sha256": "d0bed6e1956b97bfc4fbfd876c2fbd3da34e2af48009cb494d4ca6907d36459e",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mssql.sql",
      "format": "sql-mssql",
      "table": null,
      "key": "datasets/employee-payroll-management-system/v4/sql/mssql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/employee-payroll-management-system/v4/sql/mssql.sql",
      "bytes": 96788,
      "sha256": "34e7729b503cd866b152be255fb07c156d387f8ef04ce422ddb06cad431acb73",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/sqlite.sql",
      "format": "sql-sqlite",
      "table": null,
      "key": "datasets/employee-payroll-management-system/v4/sql/sqlite.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/employee-payroll-management-system/v4/sql/sqlite.sql",
      "bytes": 92841,
      "sha256": "3d3b41cba7db1c4c95453bcd8ff14d9a937d215d99a75a7234615efdd03e5f38",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "prisma/seed.ts",
      "format": "prisma-seed",
      "table": null,
      "key": "datasets/employee-payroll-management-system/v4/prisma/seed.ts",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/employee-payroll-management-system/v4/prisma/seed.ts",
      "bytes": 204876,
      "sha256": "54038489e23281dc55e804c3f911256ed14979c3879024f1a126f20d41c7d4ad",
      "rows": null,
      "contentType": "application/typescript; charset=utf-8"
    },
    {
      "file": "django/fixtures.json",
      "format": "django-fixture",
      "table": null,
      "key": "datasets/employee-payroll-management-system/v4/django/fixtures.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/employee-payroll-management-system/v4/django/fixtures.json",
      "bytes": 333052,
      "sha256": "3061846240369be1699e4f1ab39071e870c717bf5d9c1f22251df0147b76fc81",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    }
  ],
  "publishedAt": 1788766039628,
  "updatedAt": 1789095782290
}
