Learning to like Amazon Forecast

Learning to like Amazon Forecast

Posted by Scott Phillips on 17th Jan 2023

Our Mission 4 for AWS on Cloud Astronauts uses an AI service on AWS called Amazon Forecast. It’s a no-code solution that allows anyone to load a time series dataset and then generate a forecast through a simple-to-use UI interface.  Again, you don’t have to do any coding.  This is pretty cool.  Imagine being a storeowner and wanting to forecast product sales during a seasonal event, a sale, or a heat wave. If you have the data from the past, you can get some forecasts that might make your life easier in the future.  That’s the idea.

Our Cloud Astronauts mission is set on Mars and our story is about a sandstorm that will reduce energy output from the Mars Colony’s solar panels.  We have energy usage data for 46 colony modules (habitats, labs, ag pods, rover charging stations, fuel processing plants, etc.) for the last three weeks and the mission is to estimate how to cut back power across the Mars Colony safely, given less will be produced during the sandstorm. Our Mission is a great story problem and we give you the data to use on Amazon Forecast.

But we have always had one big gripe with Amazon Forecast.  It’s expensive.  And the cost doesn’t really seem to make sense.  To produce a single time series model using a dataset with just 15,000 datapoints costs about $4 using Free Tier (which is good for one model a month) and about $8 to create a forecasting model outside of Free Tier.  If you use a bigger dataset, the cost can increase up to $25 for a larger dataset (100,000 datapoints).

Why so expensive?  First, it’s the training time to create a model.  Then, Amazon charges for how many datapoints you forecast.  Let’s start with processing time.

The charge is .25/hour for instance run time and the model takes about 3 hours to create from start to end.  However, AWS has designed the service to use parallel processing so the start and stop time of three hours does not reflect how many instances are running during that three hours - and you pay for each hour on each instance.  There are multiple instances running and so the costs add up.

This doesn’t seem fair because across other clouds and other services, creating a model like this with a similar sized dataset (or larger) is often closer to .25 with a single instance.

We suspect the Amazon Forecast service is not architecturally designed to optimize cost OR AWS has chosen to charge a much higher rate than seems fair.  We just don’t know and it is a bit mysterious and frustrating.

But our frustration on cost with Amazon Forecast has a lot to do with being a small boutique startup focused on training regular people who are cost sensitive (like we are) and are not on a corporate budget.  If you are a business - big or small - this pricing may not be so bad.  In fact, it could be pretty good.

Once you build a model and create a forecast of data points, there aren’t any additional charges.  You can come back and look at that model’s output for days.  You can try forecasting new data points using the same model.  For a business to have insight on forecasting that helps optimize what to stock or how much to order, a weekly charge of $10-$25 really is not that big of an expense if it adds value or provides new insights that you didn’t have before.

In this respect, Amazon Forecast might be a very strong tool at a fairly decent price.  We have not used it in a business context, but the cost seems reasonable.  For most of our users who are just trying to experiment and learn, we suggest running ONE forecast model.  The cost will be $4 with Free Tier.  That’s not terrible.  You can learn a lot about Amazon Forecast with one run through and perhaps a second run in the next calendar month.  But after that, you should be aware of the costs and monitor them on the Billing service.  If you are a business, however, these costs are modest and this service might be a good one to explore.