top of page
  • Writer's pictureTesfahun Tegene Boshe

RWFM – an R package for WFM calculations

Updated: Feb 2

RWFM is a comprehensive R package that I have developed to cater to the workforce optimization and call center analytics requirements. It offers a range of powerful tools and functions that can be utilized for a wide array of tasks related to capacity planning and schedule optimization.

One of the core functionalities of RWFM is its ability to calculate staffing requirements. This function can take into account a range of factors, such as service level objectives, average handling time, and available agent hours, to determine the optimal number of agents required to meet business objectives. This feature can help organizations optimize their workforce management strategies and ensure that they have the right number of agents available to meet demand while also minimizing costs.

In addition to this, the package also includes functions to identify the most optimum staffing for a selected combination of labor law constraints, agent availability and desired staffing efficiency. These functions takes into account a range of factors, such as employee preferences, labor laws, and business needs, to generate schedules that are fair and equitable while also meeting business objectives. This feature can help organizations optimize their scheduling processes, reduce labor costs, and improve employee satisfaction.


Example use case

Are you new to R? Here is a short tutorial.


Install from GitHub Repository

Metrics Calculations

Let's start with how we can use RWFM for a single data point calculations.

Required FTE (ReqFTE), Occupancy, percentage of contacts answered immediately(CAI)



Average speed of answering (ASA), service level (SL)



Next we will see how the same functions can be used for a dataframe with multiple data points. I have prepared a csv, "capacityPlanInput.csv", file with input parameter fields. Once you read the file, mapply function from base R can be used to map the data points and the desired function. The parameters need to be put in a proper order.



Number of agents, occupancy, percentage contacts answered immediately



Average speed of answering, service level



Save the output to a csv file



Schedule Generation

Generating optimum schedule shells that fit to the requirement line established after capacity planning calculations at the same time considering the cost is not an easy task. Read this blog to understand how RWFM's schedule generator works. Here is an example use case for 3 different scenarios. Before that let's import a sample capacity plan output that shows number of required heads in 1-hour interval for 1 week.




A. for a full-time staff





B. For a part-time and full-time staff




C. For a Gig-Economy type workforce



answer3$plot




Checking coverage and efficiency





To summarize this, RWFM is a comprehensive R package that offers a range of powerful tools and functions for workforce management and call center analytics. With its ability to calculate the staffing requirements and generate optimal schedules, RWFM can help businesses optimize their call center operations and improve overall performance. I hope the reader finds this useful. Reach me at LinkedIn if you wish to contribute to RWFM.

749 views0 comments

Recent Posts

See All
bottom of page