Make v Buy Calculator Documentation

How the values populating the charts are calculated

The “Make v Buy” utility is an advanced JavaScript module designed to aid organizations in evaluating the financial implications of producing ID cards in-house versus outsourcing the production. This tool provides a thorough analysis by calculating and comparing the costs associated with both approaches over a span of three years. By incorporating a range of variables such as employee turnover, staff growth, equipment costs, and operational expenses, the utility generates detailed cost projections and visual representations. This comprehensive approach allows decision-makers to make informed choices based on a clear understanding of the long-term financial impacts of their ID card production strategy. Below is an in-depth explanation of how the values populating the charts are calculated and utilized to provide this comparative analysis.

Basic Parameters

  • Employees per site: MvB.params.employees
  • Employee Turnover Percent (%): MvB.params.turnover
  • Staff Growth Per Year: MvB.params.growth
  • Number of Sites: MvB.params.sites

Card Production Calculations:

  • Yearly Production:
    • Year 1: MvB.params.employees * (1 + (MvB.params.turnover / 100))
    • Year 2: MvB.vars.y1Prod + MvB.staffIncrease(MvB.vars.y1Prod)
    • Year 3: MvB.vars.y2Prod + MvB.staffIncrease(MvB.vars.y2Prod)

In-House Equipment Costs:

  • Hardware Cost per Year: MvB.params.ih_printer_cost / MvB.params.ih_equipment_life
  • Hardware Maintenance Cost: MvB.params.ih_printer_cost * (MvB.params.ih_hw_maintenance / 100)
  • Software Maintenance Cost: MvB.params.ih_software_cost * (MvB.params.ih_sw_maintenance / 100)
  • Total Equipment Costs (Yearly): Sum of the above three values, plus initial software cost for year 1.

In-House Support & Setup Costs:

  • Setup Cost: MvB.params.ih_setup_hours * MvB.params.ih_hourlySupport + MvB.params.ih_setup_travel
  • Annual Support Cost: MvB.params.ih_tech_support_hours * MvB.params.ih_hourlySupport
  • Total Support Costs: Setup cost for year 1, plus annual support cost for each year.

In-House Operational Costs:

  • Operator Training Cost: MvB.params.ih_operator_training_hours * MvB.params.ih_hourlyOpPersonnel
  • Data Input Costs:
    • Year 1: (MvB.vars.y1Prod / MvB.params.ih_cardsPH) * MvB.params.ih_hourlyOpPersonnel
    • Year 2: (MvB.vars.y2Prod / MvB.params.ih_cardsPH) * MvB.params.ih_hourlyOpPersonnel
    • Year 3: (MvB.vars.y3Prod / MvB.params.ih_cardsPH) * MvB.params.ih_hourlyOpPersonnel
  • Sick Hours Cost: MvB.params.ih_annual_sick_hours * MvB.params.ih_hourlyOpPersonnel (Year 1, half for Year 2 and 3)
  • Total Operational Costs: Sum of operator training, data input costs, sick hours costs, and other overheads.

Outsourcing Costs:

  • Setup Costs: MvB.params.ih_hourlySupport * MvB.params.os_tech_support_hours (same for each year)
  • Operational Costs:
    • Training Cost: MvB.params.ih_hourlyOpPersonnel * MvB.params.os_operator_training_hours (Year 1 only)
    • Data Input Cost:
      • Year 1: (MvB.vars.y1Prod / MvB.params.os_cardsPH) * MvB.params.ih_hourlyOpPersonnel
      • Year 2: (MvB.vars.y2Prod / MvB.params.os_cardsPH) * MvB.params.ih_hourlyOpPersonnel
      • Year 3: (MvB.vars.y3Prod / MvB.params.os_cardsPH) * MvB.params.ih_hourlyOpPersonnel
    • Printing Cost: MvB.params.os_per_card * Yearly Production
    • Mailing Cost: MvB.params.os_mailing * Yearly Production
    • Sick Hours Cost: MvB.params.os_annualSickHoursOs * MvB.params.ih_hourlyOpPersonnel (Year 1, half for Year 2 and 3)

Summary Calculations:

  • Total In-House Costs (Yearly): Sum of equipment, support, and operational costs.
  • Total Outsourcing Costs (Yearly): Sum of setup and operational costs.
  • Cost per Card: Total cost divided by the number of cards produced.

Charts and Comparison:

The script uses these calculated values to populate and compare the costs in various charts (bar and pie charts), illustrating the total costs and cost breakdowns for in-house vs. outsourcing over three years.

The key functions involved in these calculations include:

  • setCardProd(): Calculates yearly card production.
  • setEquipCosts(): Calculates equipment-related costs.
  • setSupportCosts(): Calculates setup and support costs.
  • setOperationsCosts(): Calculates operational costs.
  • setOsSetupCosts(): Calculates setup costs for outsourcing.
  • setOsOperationalCosts(): Calculates operational costs for outsourcing.
  • drawOneSiteCostChart(), drawBreakdownChart(), multiSiteCostChart(): Draws the charts using Google Charts.

These functions ensure that all cost elements are included in the final cost comparisons and visual representations.

make v buy logo