AWS recently released an open source project called AWS Networking Costs Calculator, which allows users to run an AWS networking-focused calculator to estimate and visualize the various charges for a given network architecture.
Users can use the calculator to select their AWS region and the networking services in their architecture, along with other relevant inputs such as the number of endpoints used and the amount of data transferred or processed. This will generate a sample diagram that helps visualize traffic's connectivity and flow.
In a Networking and Content Delivery blog post, the company explains that the calculator has two main components:
- A serverless backend part that uses the AWS Price List Query APIs to get the updated prices for the different networking services. This process runs daily inside an AWS Lambda function, with prices cached in Amazon DynamoDB.
- A ReactJS front-end web application (hosted on Amazon Simple Storage Service (Amazon S3) and fronted with an Amazon CloudFront distribution), which is the calculator user interface.
AWS Networking Costs Calculator high-level architecture (Source: AWS Networking and Content Delivery blog post)
Before deploying the tool in an AWS account, users must ensure that they have a Linux-based OS, NodeJS (version 18 or later) and NPM, AWS Cloud Development Kit (AWS CDK), and an AWS account with AWS CLI (v2) installed and configured. After verifying the prerequisites, they can run the deployment script from the project’s root directory using the $ ./deploy.sh command. The deployment will take 5–10 minutes. Once completed, users will receive a CloudFront front-end URL to access the tool.
In a LinkedIn post, AWS principal solutions architect Hrushik Gangur writes:
No more guessing, using Excel sheets, or interpreting AWS documentation to figure out data transfer/processing costs, specifically when your workload uses multiple networking services. Install this tool locally on your laptop, drag and drop, and connect networking service, and get total end-to-end networking cost!
However, the company also states that the pricing users see in the tool for their network architecture is an estimate. The actual costs may vary depending on factors such as other AWS services or third-party products in use. In addition, not all AWS networking services are available for cost estimates in the tool.
Taranvir Singh, an IDC Analyst for Worldwide Cloud Networking Research, wrote in another LinkedIn post:
Unpredictable costs are a significant concern for clients using cloud services. While cloud pricing calculators are available, they primarily focus on compute and storage, leaving a gap in networking costs, which can significantly impact overall IT budgets. I'm not a fan of the self-hosted aspect and any cost that customers will incur for this tool, but I feel this is temporary, and the AWS team is working on it.
Lastly, other means of estimating and analyzing costs exist, such as the AWS Cost CLI, the AWS Pricing Calculator, and third-party products.