PLAIN PROGRESS — SYNTHETIC COMPENSATION COMPARISON, 2023–2025 These files contain generated educational model records, not actual company results, original seasonal samples, or native ServiceTitan exports/import files. No claim of ServiceTitan endorsement is made. CONSTRUCTION HISTORY AND ITS LIMIT The current workbooks are assumption-based synthetic pay-mechanics illustrations. Their documentation identifies model assumptions and ServiceTitan-inspired report structures; it does not establish that actual 90-day seasonal samples were expanded. No original source-sample manifest or accompanying record-generation algorithm has been verified. This download provides the final workbook records and documented assumptions, not a verified reconstruction of the original generation process. No seasonal resampling, distribution-fitting or capacity-constrained event-simulation method is claimed for these files. The workbook footers record random seed 20261028. A seed alone is not sufficient to regenerate the model without the generation algorithm and inputs. The same synthetic job IDs, customer needs, prices, work mix, hours, cancellations, warranty activity and repeat activity are used in all three arrangements. Behavior does not change between plans. Compensation is calibrated to comparable total payroll, so similar final contribution is a design feature, not a real-world finding. A proposed simulation combining seasonal calibration, connected events, scheduling constraints, deterministic accounting and repeated validation would be a separate future model. It has not been implemented or validated as the origin of these current files. Internal reconciliation does not establish statistical realism or causal effects. FILES AND ROWS plain-progress-synthetic-model-assumptions-2023-2025.csv: 21 data rows; 7 columns. plain-progress-synthetic-employee-inputs-2023-2025.csv: 21 data rows; 8 columns. plain-progress-synthetic-monthly-performance-2023-2025.csv: 108 data rows; 34 columns. plain-progress-synthetic-jobs-2023-2025.csv: 22,902 data rows; 33 columns. plain-progress-synthetic-payroll-2023-2025.csv: 33,231 data rows; 16 columns. plain-progress-synthetic-hybrid-bonus-2023-2025.csv: 12 data rows; 13 columns. Each CSV has a single header row, UTF-8 encoding with BOM, ISO dates (YYYY-MM-DD), and machine-readable columns. Each row has evidence_class=synthetic, compensation_plan and source_workbook. Plan values are hourly, commission_with_guarantee, and hybrid. Filter by plan before summing: stacking three arrangements is not three separate businesses or three times the activity. The bonus file contains hybrid only. Employee and model-input files repeat the workbook-specific inputs for each plan; these are inputs, not extra payments or additional employees. PREPARATION Removed report titles, blank padding, footer summaries and repeated table headers from the records. Extracted the model assumptions and employee inputs from the monthly-performance footer into their own CSVs. Customer and employee display-name columns and project numbers are omitted. Synthetic customer/location IDs and employee IDs F01–F07 retain the joins; technician labels were standardized to those employee IDs. No original real-world sample is being distributed, and this preparation is not a formal anonymization certification. Currency columns in jobs, payroll and monthly performance are decimal USD rounded half-up to cents, removing spreadsheet aggregation noise. Other rates, ratios, hours and the source hybrid formula fields retain the stored values; small floating-point artifacts may remain in calculated bonus fields. The hybrid formula budget is distinct from actual employee-level rounded payouts. CSVs contain values, not live formulas. Editing them does not regenerate operations or recalibrate the pay arrangements. JOINING AND INTERPRETING THE RECORDS Use compensation_plan plus job_number to join a payroll job line to its job, and employee_id plus month_key to aggregate employee pay. A job may have multiple payroll activities; summing job revenue again after such a join would duplicate revenue. Job records include canceled, unconverted and warranty events. Completion/event date is the event date for rows without a completed job. Blank fields remain blank, not zero. Negative adjustment revenue represents refunds. Returning-customer indicators are generated activity, not verified real retention outcomes. Gross pay is before employee tax/deductions and excludes employer burden. Job payroll and its burden are already in job costs. Subtract only remaining non-job payroll, marketing, fleet and team bonuses when reconciling contribution. External installation labor is already in PO/bill costs. Do not deduct either cost twice. General office overhead, rent, owner pay, tax, financing, bad debt and collection delays are outside this model; contribution is not net profit. MODEL INPUTS Employer burden: 14%. Commission: monthly nonrecoverable floor at 60% of the hourly target, with calibrated commission rates. Hybrid: 80% hourly base plus quarterly team gainsharing, allocated across eligible scheduled hours. Monthly marketing: USD 6,500; fleet: USD 4,200. Hybrid funding share: 0.3659008726717091 of contribution above its benchmark, with employer burden inside the pool. These are model choices, not recommended market rates, observed forecasts or legal-compliance calculations. No overtime compliance or employee take-home calculation is supplied. VALIDATION All 7,634 job rows per plan, seven employees and 36 months are retained. Cleaned CSV margins, contribution and payroll reconcile to the article and the unchanged source workbooks to cents. Monthly employee gross pay and paid hours reconcile to all 756 employee-month-plan records. The separate USD 20,000 sensitivity is not a finding in these baseline files. REPORT STRUCTURE REFERENCES — NOT SOURCES OF THE NUMERICAL ASSUMPTIONS Jobs / job costing: https://help.servicetitan.com/docs/run-job-costing-reports Master Pay File: https://help.servicetitan.com/docs/master-pay-file-report-template Business Unit Performance: https://help.servicetitan.com/docs/business-unit-performance-report-template Financial-reporting walkthrough: https://www.servicetitan.com/webinar-recap-financial-reporting COLUMN DICTIONARY Common columns: evidence_class labels every row synthetic; compensation_plan selects the arrangement; source_workbook identifies the supplied synthetic workbook without a private path. Percent/fraction values use 1=100%; integer flags use 1=yes, 0=no. Do not interpret blank entries as zero. monthly-performance | month | source field: Month | ISO date monthly-performance | business_unit | source field: Business Unit | Source value; see workbook/model definition monthly-performance | completed_jobs | source field: Completed Jobs | Source value; see workbook/model definition monthly-performance | canceled_jobs | source field: Canceled Jobs | Source value; see workbook/model definition monthly-performance | unconverted_jobs | source field: Unconverted Jobs | Source value; see workbook/model definition monthly-performance | warranty_jobs | source field: Warranty Jobs | Source value; see workbook/model definition monthly-performance | completed_revenue | source field: Completed Revenue | USD (two-decimal currency) monthly-performance | adjustment_revenue | source field: Adjustment Revenue | USD (two-decimal currency) monthly-performance | total_revenue | source field: Total Revenue | USD (two-decimal currency) monthly-performance | material_costs | source field: Material Costs | USD (two-decimal currency) monthly-performance | equipment_costs | source field: Equipment Costs | USD (two-decimal currency) monthly-performance | po_bill_costs | source field: PO/Bill Costs | USD (two-decimal currency) monthly-performance | labor_pay | source field: Labor Pay | USD (two-decimal currency) monthly-performance | performance_pay | source field: Performance Pay | USD (two-decimal currency) monthly-performance | labor_burden | source field: Labor Burden | USD (two-decimal currency) monthly-performance | total_costs | source field: Total Costs | USD (two-decimal currency) monthly-performance | gross_margin | source field: Gross Margin | USD (two-decimal currency) monthly-performance | gross_margin_percent | source field: Gross Margin % | Fraction (1 = 100%) monthly-performance | non_job_pay_plus_burden | source field: Non-job Pay + Burden* | USD (two-decimal currency) monthly-performance | marketing_cost | source field: Marketing Cost* | USD (two-decimal currency) monthly-performance | fleet_cost | source field: Fleet Cost* | USD (two-decimal currency) monthly-performance | contribution_before_team_bonus | source field: Contribution Before Team Bonus* | USD (two-decimal currency) monthly-performance | team_bonus_cost | source field: Team Bonus Cost* | USD (two-decimal currency) monthly-performance | contribution_after_team_bonus | source field: Contribution After Team Bonus* | USD (two-decimal currency) monthly-performance | paid_hours | source field: Paid Hours* | Hours monthly-performance | working_hours | source field: Working Hours* | Hours monthly-performance | driving_hours | source field: Driving Hours* | Hours monthly-performance | paid_idle_hours | source field: Paid Idle Hours* | Hours monthly-performance | returning_customer_jobs | source field: Returning Customer Jobs* | Source value; see workbook/model definition monthly-performance | total_field_payroll | source field: Total Field Payroll* | USD (two-decimal currency) monthly-performance | payroll_reconciliation | source field: Payroll Reconciliation* | USD (two-decimal currency) jobs | job_number | source field: Job # | Source value; see workbook/model definition jobs | invoice_number | source field: Invoice # | Source value; see workbook/model definition jobs | completion_event_date | source field: Completion / Event Date | ISO date jobs | customer_id | source field: Customer ID* | Source value; see workbook/model definition jobs | location_id | source field: Location ID* | Source value; see workbook/model definition jobs | business_unit | source field: Business Unit | Source value; see workbook/model definition jobs | job_type | source field: Job Type | Source value; see workbook/model definition jobs | job_status | source field: Job Status* | Source value; see workbook/model definition jobs | job_campaign | source field: Job Campaign | Source value; see workbook/model definition jobs | sold_by | source field: Sold By* | Source value; see workbook/model definition jobs | performing_technician | source field: Performing Technician* | Source value; see workbook/model definition jobs | original_job_number | source field: Original Job #* | Source value; see workbook/model definition jobs | estimate_amount | source field: Estimate Amount* | USD (two-decimal currency) jobs | total_revenue | source field: Total Revenue | USD (two-decimal currency) jobs | adjustment_revenue | source field: Adjustment Revenue* | USD (two-decimal currency) jobs | material_costs | source field: Material Costs | USD (two-decimal currency) jobs | equipment_costs | source field: Equipment Costs | USD (two-decimal currency) jobs | po_bill_costs | source field: PO/Bill Costs | USD (two-decimal currency) jobs | labor_pay | source field: Labor Pay | USD (two-decimal currency) jobs | performance_pay | source field: Performance Pay | USD (two-decimal currency) jobs | labor_burden | source field: Labor Burden | USD (two-decimal currency) jobs | payroll_adjustments | source field: Payroll Adjustments | USD (two-decimal currency) jobs | total_costs | source field: Total Costs | USD (two-decimal currency) jobs | gross_margin | source field: Gross Margin | USD (two-decimal currency) jobs | gross_margin_percent | source field: Gross Margin % | Fraction (1 = 100%) jobs | job_hours | source field: Job Hours* | Hours jobs | sales_hours | source field: Sales Hours* | Hours jobs | driving_hours | source field: Driving Hours* | Hours jobs | returning_customer_job | source field: Returning Customer Job* | Source value; see workbook/model definition jobs | month_key | source field: Month Key* | ISO date payroll | activity | source field: Activity | Source value; see workbook/model definition payroll | date | source field: Date | ISO date payroll | paid_duration | source field: Paid Duration | Hours payroll | reg_hours | source field: Reg Hours | Hours payroll | ot_hours | source field: OT Hours | Hours payroll | gross_pay | source field: Gross Pay | USD (two-decimal currency) payroll | job_number | source field: Job #* | Source value; see workbook/model definition payroll | business_unit | source field: Business Unit* | Source value; see workbook/model definition payroll | employee_id | source field: Employee ID* | Source value; see workbook/model definition payroll | pay_rate_factor | source field: Pay Rate / Factor* | Source value; see workbook/model definition payroll | commission_base | source field: Commission Base* | Source value; see workbook/model definition payroll | employer_burden | source field: Employer Burden* | USD (two-decimal currency) payroll | month_key | source field: Month Key* | ISO date hybrid-bonus | quarter | source field: Quarter | Source value; see workbook/model definition hybrid-bonus | contribution_before_bonus | source field: Contribution Before Bonus | Source value; see workbook/model definition hybrid-bonus | agreed_contribution_target | source field: Agreed Contribution Target | Source value; see workbook/model definition hybrid-bonus | contribution_above_target | source field: Contribution Above Target | Source value; see workbook/model definition hybrid-bonus | fund_share | source field: Fund Share | Fraction (1 = 100%) hybrid-bonus | pool_cost_including_burden | source field: Pool Cost Including Burden | Source value; see workbook/model definition hybrid-bonus | gross_bonus_pool | source field: Gross Bonus Pool | Source value; see workbook/model definition hybrid-bonus | employer_burden | source field: Employer Burden | Source value; see workbook/model definition hybrid-bonus | eligible_scheduled_hours | source field: Eligible Scheduled Hours | Hours hybrid-bonus | gross_bonus_per_hour | source field: Gross Bonus Per Hour | Source value; see workbook/model definition model-assumptions | setting, value, units, treatment | documented footer model inputs. employee-inputs | employee_id, role_trade | synthetic roster identity and responsibility. employee-inputs | hourly_target_usd_per_hour, hybrid_base_usd_per_hour | USD per scheduled paid hour. employee-inputs | commission_rate_fraction | calibrated model fraction; inspect the corresponding payroll activity and commission base, not a recommended industry rate. SOURCE WORKBOOK SHA-256 hourly_synthetic_2023_2025.xlsx: eafde20abc17120600de4ed7583e6c9a8cb311c5fbece229b2e4b45fee585e36 commission_synthetic_2023_2025.xlsx: 201eab8e2b933b3ba1b89a2ba8e931b89e77ea302267203a61dc8e600ac591af hybrid_synthetic_2023_2025.xlsx: da184c8210e920d132dd7b2810face658eeafc8adf5b978f253c0ad8c13731c5