Issue No. #9 27 November 2001 ISSN: 1532-1886

We encourage you to forward this newsletter to others. Please also CC to so that we can provide them a free subscription too.

Clash of the Titans (Real-time Rating Versus Batch) by Carl Wright

Each day more than a billion telephone calls are rated. How are they rated? Is it batch or real-time?

Everyone talks about their real-time rating solutions. My company, like others, offers a real-time rating solution. The excitement related to real-time processing is so strong that Portal Software Inc. uses it in their trademarked slogan "Real Time No Limits".

As a vendor or carrier involved with rating, nobody brags about their batch rating. Batch rating is mentioned in an apologetic manner. This is quite unfair to batch rating. I believe that batch rating processes ten times more transactions than real-time, but nobody loves it.

Below I'll show you why real-time rating is hard to do well and why batch remains an attractive approach to rating. This is not an exhaustive review. It won't fit in one newsletter.

How You Show The Customer Their Transactions

Your bill (paper, electronic, etc.) shows each customer your measurement of their usage and your charges for their use. The transactions shown on a bill are always arranged in date/time order. Not showing them in this order makes it difficult for your customer to evaluate their bill and pay it. We can all agree that getting customers to pay their bill is the primary purpose of the bill.

This date/time order of displaying and processing these transactions is fortunate. It is the order of how they should be delivered by the network to the rating and billing functions.

Doing It In Real-Time

Since the order in which the customer uses your network is the order in which you record the events, you can rate everything as it finishes and just total them up as you go along.

Figure 1. Rating in real-time as transactions occur using ongoing totals

Further, you can then keep a total of their usage (dollars, minutes, etc.) and use this information to perform tiered volume discounting/rating. Examples are the "first five hundred minutes are free" or a plan where the fee for services drops as you use more.

Oops! Maybe Not

The flow of transactions in the real-time rating environment is dependent on getting everything in the right order and correctly processing them. The reality of business is that most transactions arrive in the right order and most transactions are correctly processed the first time. The operative word here is "most". The pain in the job of processing transactions is when the transactions don't arrive in the right order and/or when they don't get processed correctly the first time.

Here are some examples of how things do go wrong.

The Calls Come Out Of The Switch In The Wrong Order

When a single switch records call records (or other transactions), the switch records each transaction as it finishes. If there is only one telephone that can create a transaction, then the transactions recorded for a customer appear in ascending date/time order. Unfortunately, there is often more than one phone associated with an account. This means the output records will sometime be in date/time order and other times not. The cause of the error is that the recording device records the transaction at the end of each transaction. So, I can start a phone call and talk for twenty minutes, then after ten minutes have passed, you can make a three minute call on another phone for the customer account. You finish the second call before I finish the first one. The real-time rating flow of records delivers the second call before the first.

Figure 2. A situation where a later call is output before an earlier one

The Calls Come out of the Network in the Wrong Order

With a real-time services network involving more than one switch, you will have occasions when the information on transactions processed from one switch cannot not flow in real-time. These may be accidental or deliberate disconnects. But if your rate plans assume that the records come in proper order, you will get bad results.

Figure 3. What it looks like when a transaction doesn't arrive in date/time order

Perhaps you can rollback your transactions and your processing to correct these gaps in information when a broken link is repaired. But you've made a simple system much more complex.

The Impact When Things Can Go Wrong With Real-Time Rating

When a mistake is made in the entry of rating data, you create a real-time flow of rating errors instead of revenue. When information recorded by the network (cell sites, phone numbers, trunk identifiers, etc.) changes and the changes are not made immediately in your rating software, you create another real-time flow of rating errors.

You've got two different outcomes from these errors.

  1. The transactions are rated, but the results are wrong.

    This can go on for days until you, your customers, or your Revenue Assurance processes spot the problem. If customers are seeing the results of this rating or if the carrier is acting on this information (i.e. denying or providing service), you have a situation that makes customers unhappy.

  2. The rating process recognizes a problem and doesn't rate the calls.

    This creates a situation where you can't depend on your account balances. This does have the advantage of signaling that something is going wrong and letting you act to fix it or knowingly ignore it.

These errors can also happen in a batch rating environment. With a batch rating process, you can just re-rate everything that is affected to correct the error.


Roaming with your wireless phone or by charging calls to your wireline account from another phone creates transaction records in the switches of other carriers. Without significant investments in communications networks, you can not count on getting these transactions in real-time. When there are delays in the delivery of those records to your carrier, you get rating and billing errors. If your billing is batch oriented or if it re-rates everything before billing to correct "out of order" errors, you protect your customers from rating errors.

The problem can get worse than just a few hours or days of delay. According to 4 September 2001 USA Today article, customers of Voicestream Wireless were charged for roaming calls in January this year that had been made during the month of November previous. With some customers this pushed them over their limit on minutes included in their monthly charge. They were charged thirty cents per minute for the time over their monthly limit. (click for the article.)

How Batch Is Better

  • Batch processing allows the grouping and totaling of transactions that make auditing and revenue assurance easier.
  • Processing batches allows you to spread work from high demand periods into lower demand periods.
  • Processing batches allows a simple form of rollback of processing. When the batch as a whole is okay, then you can move on to the next batch.
  • Batches allow you to sort your transactions into date/time order to prevent the "out of order" errors that come in real-time.

How Batch Is Bad

  • When the time delays inherent in processing batches postpone knowledge about what is happening in your business, you create dangers for your business. You are steering your "ship" without looking where you are going. You are steering based on where you were!
  • If you leave your batch processing until the end of the billing cycle, you also run the risk of not having enough time to figure out and correct the cause of rating errors with your transactions.


Real-time rating and/or batch rating can work for your business. You can go entirely with a real-time processing environment, if you can either structure your network services so that nothing gets sold that you can't rate (i.e. prepaid only) or your business rules eliminate the "out of order" problem (i.e. no tiered discounting).

If you want the benefits of real-time, but have to deal with the realities of "out of order" data flows, you will want a hybrid real-time and batch solution. Perform real-time rating everywhere you can. Use this information to support your customers and your business decision-making. Educate everyone using the information about the sources and possibilities of "out of order" data and their impact. Use batch processing to correct any disruptions from "out of order" data before your billing is done.

If you don't have to know how much has been spent in real-time, you can use batch rating. Regardless, I urge you to rate your calls frequently so that you can uncover the sources of your rating errors while you have ample time to correct them before you begin your billing.

Tell Me What You Want To Hear About

The subjects that I cover in Rating Matters are driven by my personal interests in rating and billing. These are limited by the breadth of my personal experience. Please let me know about items you want to hear about or you'd like explored further. Send me your requests at .

Subscription Management

To add a subscription, click here to fill out a form. To delete a subscription, click here to delete. Thanks.

ęCopyright 2001 Service Level LLC
Rating Matters is a trademark of Service Level LLC