RCalc: Analyzing Water Rates Has Never Been Easier

RCalc software example

When we first envisioned Waterworth, the idea was simple: Create an online tool that would allow water utility managers to do the work of rate analysis themselves. And as with any new product, we believed we’d have to choose two of the three key differentiators — make it faster, make it better, make it cheaper — because achieving all three is, according to common wisdom, impossible. 

So we chose easier and cheaper. But we surprised even ourselves. 

Initially, we built Waterworth to be a much more affordable alternative to expensive consultants and a much faster alternative to cumbersome Excel spreadsheets. And we accomplished that. But with the built-in rate calculator, called RCalc, it turns out that Waterworth is also faster. Much faster. Let me explain. 

Analyzing water rate structures has always been difficult. Water managers have typically been left with a choice between doing it themselves in Excel or hiring expensive consultants to do it for them. Either way, it has been extremely difficult to obtain solid, accurate intel on how a change to your water rates would impact both future revenue and affordability for residents. 

One of the reasons for this is because there are so many different ways to structure your rates. You can have flat rates, uniform rates, inclining block rates, seasonal rates, to name just a few. You can also have several different customer categories, such as commercial, industrial, single- and multi-family residential, etc. With so many variables, calculating the impact of even a single rate adjustment becomes exceedingly difficult. Factoring multiple adjustments into your model compounds the problem even further. 

Creating such a model in Excel is excessively complex at best, nearly impossible at worst. The stalwart of spreadsheets just can’t handle tens of thousands of rows of billing data. And even when you do manage to create a model in Excel, performing the calculations takes darned near forever — and that’s on the rare occasion that the model doesn’t break. So you end up cutting corners, basing your calculations on estimates, which inevitably results in inaccuracies. (Not to give away too many industry secrets but, truth be told, consultants cut those same corners.) And besides, who has the time or expertise to develop this kind of complicated model on their own? Pretty much no one, which is what consultants have built their businesses on. 

But relying on consultants to do the work for you isn’t just expensive, it’s time consuming. And the reports that result become stale extremely quickly. Hiring a consultant involves a going through an RFP process, choosing and hiring a consultant, then waiting for their report. Because of the complexity and costliness of the entire exercise, most communities only use consultants every five to ten years, if that.

Our goal with developing RCalc was to create a rate analysis modeling tool that would be three things: 

  • Quick, meaning the ability to perform calculations across the entire billing database in seconds rather than minutes;
  • Flexible, meaning that it will work with any kind of rate structure, whether applied to all customer categories or just a subset; and, 
  • Dynamic, meaning that it is easy to change rates and rate structures to model different scenarios and compare the impact on both revenue and customers. 
Click images to enlarge

Developing a model sophisticated enough to accomplish all three of these things was challenging, to say the least. Our developers could easily find ways to achieve two out of the three, but coming up with a way to simultaneously do everything was a lot harder. 

But wait a minute. Waterworth is built on Microsoft Azure, the cloud computing service used by Fortune 500 companies and some of the world’s largest government organizations. And Azure is extremely powerful — powerful enough to perform complex calculations in a fraction of the time it would take Excel. That power allowed our developers to make significant improvements to the algorithm, making it significantly more efficient. Turned out we already had the solution. 

So over the course of about a year, and in nine iterations, we completed RCalc, Waterworth’s built-in rate calculator. RCalc uses a dynamic, multi-dimensional data structure and advanced clustering, which essentially involves looking for complex patterns within billing data that, unlike with Excel, allows us to achieve lossless compression. All that is just a fancy way of saying we don’t have to cut corners, so RCalc will give you a very accurate model of the impact of any rate structure scenario on both your future revenue and your customers’ bills. 

And these are not hypothetical models based on estimates. They are specific to your organization, based on your own billing data, which you can upload in about three minutes. You can run as many scenarios as you want, experiment with different rate structures and price points, and almost instantly get an accurate picture of the impact on revenue and affordability. And Waterworth is a tool that is always available to you, so you can keep your data, and therefore your rates analyses, always up to date, as opposed to the extended timeframe between consultants’ reports.

In short, RCalc accomplishes everything we set out to achieve. It’s a rate analysis tool that is faster, better, and cheaper than the alternatives, and it’s one that is quick, flexible, and dynamic.  

We’re almost tempted to say ‘mission accomplished’ but as with everything in business, software development, and life in general, there’s always room to be even better. So Waterworth’s process of continuous improvement will continue… stay tuned to find out what’s next. 

Share by Email
Share on LinkedIn
Share on Twitter
Share on Facebook

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>