Time-shifting Check-cashing Demand with Variable Pricing

Many banks and check cashing services are swamped with paycheck cashing transactions on Friday afternoons and Saturday mornings. It can be prohibitively expensive to hire additional staff to handle these peak periods, since even part-time staff would be idle for the rest of a 20 to 30 hour work week, and people who are qualified to be tellers can generally find full-time work. It can be difficult to determine policies that handle this peak period volume efficiently.

In some circumstances, it can make sense to charge a higher check-cashing fee during these peak times to encourage check-cashers to move their check-cashing transactions to other times when a branch is underutilized or to use less labor-intensive deposit services. The article that follows is a brief (very) summary of the findings of my Doctor of Engineering Praxis Optimal Time-variable Pricing for Check-cashing Transitions on when variable pricing works in time-shifting demand, and when it would back-fire horribly. The article is divided into the following sections:

Product Substitution and Check Cashing

In designing a pricing policy, understanding product substitution is critical. When we go to the grocery store to buy milk, if the price on your favorite brand of fat-free milk is higher than you want to pay, you will probably buy or “substitute” a lower-priced brand for your favorite. The same behavior holds true in the check-cashing market: if the fee is too high, the check casher will go somewhere else or substitute a different transaction sequence for their favorite sequence as a way to avoid the check-cashing fee. Depending upon check hold policies and account rules, there are several possible substitution alternatives:

  • Pay the check-cashing fee
  • Deposit a portion of the check and get the remainder in cash
  • Deposit the check and withdraw all or part of the check in a teller transaction on the same or a subsequent day
  • Deposit the check and withdraw all or part of the amount in an ATM transaction on the same or a subsequent day
  • Argue with the teller until the teller gives in and waives the fee as a way to deal with a growing line of disgruntled customers.

Because most of the substitution patterns generate an additional teller visit or require a longer teller visit, any fee increase that encourages substitution can actually increase teller workload.

Check-cashing Volume vs. Pricing

Understanding how check-cashing demand changes as the check-cashing fee increases is the cornerstone of implementing a time-variable pricing policy. This requires historical data on fee changes and transaction volumes. At a typical bank this can become quite complex, as customers typically do multiple general ledger (GL) transactions during one visit. To get accurate demand information for check-cashing visits, the institution must first categorize all common groups of transaction into visits, and then do regression models on demand for each visit type. Categorizing GL transactions into visit types and then converting GL transaction history into visit type demand data is time-consuming and computationally intensive. Academic computer scientists would describe it as “non-trivial”, though with the advent of solid-state disk drives and inexpensive memory, this is today a much easier problem then it was in 2004.

The basic steps in this process are

  1. Collect GL transaction data covering the period(s) when there were check-cashing fee changes
  2. Collect information on dates for other policy changes and prices for other products
  3. Identify common groups of GL transactions that form common customer visit types. This will typically require the use of Apriori associations or some other type of associations modeling tools. This step is computationally fairly straightforward.
  4. Group GL transactions into common customer visit types. This step is computationally intensive, and is by far the most difficult step in the process.
  5. Run regression models to estimate the changes in demand as function of check-cashing fee prices. Controlling for other fee and interest rate changes can be challenging.

Before attempting to do this analysis, estimate the resources required for Step 4 and make sure that you will have the necessary computer resources before proceeding.

Estimating Per-visit Labor Cost

To choose optimal check-cashing fee prices, an institution must estimate the labor cost for each visit type identified in the previous step. To do this, the institution must collect payroll data at the shift level in order to calculate the number of tellers working at a given time in each branch. When combined with the visit type data from the previous step, it is possible to use linear regression to estimate the number of teller minutes required for each visit type. This information can be interesting all by itself and may lead to changes in policy that are unrelated to check-cashing fees.

Creating an Optimization Model to Maximize Income

Once the demand sensitivity data and labor cost data have been estimated, it is time to generate an optimization model that chooses a fee timetable and staffing schedule that maximizes income while meeting various constraints on minimum and maximum work-week and other work-schedule quality metrics. Even if time-variable pricing is not used, the work-schedule optimization can be beneficial to the organization.

The most natural formulation for this model is a non-linear (fee price) integer (shift scheduling) model. Because there are few non-linear integer solvers available and because this is a computationally difficult problem, it is generally better to formulate the problem as a strict integer problem. In this case, the fee price is allowed one of several discreet values, probably in 0.25% increments.

When Time-variable Pricing Works, and When it Does Not

In general, if a bank allows deposit of a check and relatively quick withdrawal of funds, check-cashing fees can backfire due to the substitution of a deposit visit and a withdrawal visit for the single check-cashing visit. For a dedicated check-cashing service where there are no deposit accounts and this no substitution alternatives, time-variable pricing could be an efficient way to handle peak demand.


Time-variable pricing probably would not work well at most banks and credit unions due to the ability of check-cashing customers to avoid the fee by substituting other groups of transactions that avoid the fee and which are more labor-intensive for the institution. For a dedicated check-cashing service, this could be a way to handle peak-volume problems efficiently. To get the full benefit of a time-variable pricing policy, an institution should do a staff-scheduling optimization model as well so that tellers are as steadily utilized as possible and so that wait times are reasonable throughout the business week.

Analyzing the possible substitution patterns prior to undertaking the analysis for estimating optimal prices is time well spent; if there are any reasonable substitution patterns for paying check-cashing fee, there is little point in looking at time-variable pricing.


Moore, Bruce W (2004). Optimal Time-variable Pricing for Check-cashing Transactions. Doctor of Engineering Praxis, Southern Methodist University. ISBN 0496082868.