Amazon CodeGuru is a developer tool that provides intelligent recommendations to improve your code quality and identify an application’s most expensive lines of code.

Amazon CodeGuru offers two services: CodeGuru Reviewer and CodeGuru Profiler. There are no upfront fees, long-term contracts or commitments. You are charged separately for CodeGuru Reviewer and CodeGuru Profiler at the end of each month, as per the pricing below.

 

Amazon CodeGuru Reviewer

For Amazon CodeGuru Reviewer, you pay a monthly fixed rate. The monthly price is determined by the aggregated number of lines of code across all of your onboarded repositories, and is calculated using the following tiers based on the repository size. If you have a code repository with multiple code branches, you will be charged for the largest code branch. Non-code lines in repositories such as comments and empty lines are not counted.

Free tier

You can get started with Amazon CodeGuru Reviewer at no cost. The free tier lasts 90 days for up to 100K lines of code in onboarded repositories per AWS account and includes two full repository scans per month per repository. When the 90-day free tier expires or your repository size exceeds 100K lines of code, you will pay standard pricing rates based on the repository size below.

Standard pricing

When you enable CodeGuru Reviewer on your repository, you can, 1) perform an incremental code review analysis (example: pull, push or merge request) to analyze any code changes or, 2) do a full repository scan to get recommendations on the entire repository. The standard monthly pricing includes all incremental code review analysis for onboarded repositories. The monthly price also includes up to two full repository scans per month, for each onboarded repository. Additional full repository scans will be charged at $10 per 100K lines of code.

Every incremental code review analysis and full repository scan is inclusive of all security features available in CodeGuru Reviewer. (See documentation for more details)

CodeGuru Reviewer Pricing Examples

  • Pricing Example #1 – Free Tier Illustration

    Consider a scenario where you have a single code repository, containing 90,000 lines of code. Each month developers submit 100 incremental code reviews and trigger 2 full reposiroty scans. 

    Repository size  First 100K lines of code Additional 100K lines of code Monthly Charge

    90k

    $0 (first 90 days)

    $10 (after 90-day free tier)

    Not applicable 

    $0 (first 90 days)

    $10 (after 90-day free tier)

  • The following examples consider scenarios outside the free tier.

    Pricing example #2

    Consider a scenario, where you have a single code repository, containing 450,000 lines of code. Each month your developers submit 300 incremental code reviews and trigger 2 full repository scans. In this scenario, your fixed monthly price will be rounded up to 400,000 lines of code and you will be charged as if you had a 400K code repository.

    Repository size  First 100K lines of code Additional 100K lines of code Monthly Charge

    450K

    $10

    $30 * 4 (350K rounded to 400K/ 100K) = $120

    $10 + $120 = $130

  • Pricing example #3

    You may also wish to run code analysis on more than one repository. In this example we have 3 code repositories, each containing 300,000 lines of code. Each month your developers submit 200 incremental code reviews and trigger 2 full repository scans on each of the code repositories.

    Repository size  First 100K lines of code Additional 100K lines of code Monthly Charge

    3*300K = 900K

    $10

    $30 * 8 (800K/ 100K) = $240

    $10 + $240= $250

  • Pricing example #4

    You may have a repository that contains multiple code branches. You can run code analysis or any or all of the branches and will be charged only for the largest code branch. In this example, you have a single code repository, containing 3 branches. The main branch contains 400,000 lines of code and the other 2 branches contain 300,000 lines of code each. Every month your developers submit 300 incremental code reviews, averaging 1000 lines of code per review, across all three branches. 

    Repository size  First 100K lines of code Additional 100K lines of code Monthly Charge

    Max (400K, 300K, 300K)= 400K

    $10

    $30 * 3 (300K/ 100K)= $90

    $10 + $90= $100

  • Pricing example #5

    In this example, we will illustrate the impact to your monthly cost of more than 2 full repository scans per repository per month. You have 3 code repositories, each containing 300,000 lines of code. Each month your developers submit 200 incremental code reviews on each of the code repositories. They trigger 3 full repository scans for the first repository and 2 full repository scans each for the other two repositories.

    Repository size  1st 100K lines of code Additional 100K lines of code Monthly Charge 

    3*300K = 900K

    $10

    $30 * 8 (800K/ 100K) = $240

    $10 + $240= $250

    Repository  Repository size Full repository scan Cap limit (per repository) Over cap charge
    First 300k 3 2 (3-2) * $10 *(300K/100K) = $30
    Second 300k 2 2 $0
    Third 300k 2 2 $0

    Total monthly charges = $250 +$30 = $280

Amazon CodeGuru Profiler

When you enable Amazon CodeGuru Profiler to profile your application, it samples the CPU utilization and latency characteristics of your application runtime to create an application profile. For applications running on Amazon EC2 instances, Amazon ECS, Amazon EKS, AWS Fargate or AWS Lambda each application profile is priced based on the number of sampling hours CodeGuru Profiler performs. One sampling hour is equivalent to running the CodeGuru Profiler agent on one instance or container for one hour. Similarly, if one application is running on two instances or containers for one hour each and the agent is running on these two instances, it will collect 2 sampling hours.

Free Tier

You can get started with Amazon CodeGuru Profiler at no cost.  The free tier lasts for 90 days. When the 90-day free tier expires, you will pay standard pricing rates based on the number of sampling hours below. 

Standard pricing

Application profiling on Amazon EC2 Instances and Amazon ECS, EKS, and AWS Fargate Containers $0.005 per sampling hour for the first 36,000 sampling hours per profiling group per month. No additional charge beyond 36,000 sampling hours per profiling group per month. 
Application profiling on AWS Lambda Free for the first 500 sampling hours per payer account. Therafter $0.005 per sampling hour for the first 36,000 sampling hours per profiling group per month. No additional charge beyond 36,000 sampling hours per profiling group per month. 

CodeGuru Profiler Pricing Examples

  • Pricing Example #1

    Consider a scenario where you want CodeGuru Profiler to profile 1 application running on 50 EC2 instances. In this case, the profiling group will consist of a single application. 

    Number of applications  Number of EC2 Instances  Sampling hours  Sampling hour / application Monthly Charges

    1

    50

    1 application* 50 instances * 24 hours per day * 30 days per month = 36,000 sampling hours

    $0.005 per hour

    36,000 * $0.005 = $180
  • Pricing example #2

    Consider a scenario where you want CodeGuru Profiler to profile 10 applications, each as a different profiling group, running on EC2 instances with 15 EC2 instances per application.

    Number of applications  Number of EC2 Instances  Sampling hour / application Price per Sampling hour  Monthly Charges

    10

    15

    1 application* 15 instances * 24 hours per day * 30 days per month = 10,800 sampling hours

    $0.005 per hour

    10,800 * $0.005 * 10 applications = $540
  • Pricing example #3

    Consider a scenario where you want CodeGuru Profiler to profile a single application running on 70 ECS containers.

    Number of applications  Number of EC2 Instances  Sampling hour / application Price per Sampling hour  Monthly Charges

    10

    70

    1 application * 70 instances * 24 hours per day * 30 days per month = 50,400 sampling hours

    $0.005 per hour

    36,000 * $0.005 = $180
  • Pricing example #4

    Consider a scenario where you want CodeGuru Profiler to profile an AWS Lambda function which runs for 5 seconds on each invocation and gets invoked 1,000,000 times in a month.

    In this example, since the first 500 sampling hours per payer account are free, CodeGuru Profiler charges for your account for this billing period would be 888.89 sampling hours at a rate of $0.005 per hour. 

    Number of Sampling Hours Price per Sampling hour Monthly Charges

    (5 seconds * 1,000,000 invocations) / 3,600 seconds = 1,388.89 sampling hours

    $0.005 per hour

    (1,388.89 hours- 500 hours) * $0.005 = $4.44
  • Pricing example #5

    Consider a scenario where you want CodeGuru Profiler to profile two AWS Lambda functions as part of the same profiling group. The first Lambda function runs for 3 seconds on each invocation and gets invoked 10,000,000 times in a month. The second Lambda function runs for 6 seconds on each invocation and gets invoked 20,000,000 times in a month.

    In this example, assuming this is all what you profile for AWS Lambda in your account, since the first 500 sampling hours are free for your account, and we don’t charge beyond 36,000 hours per profiling group. 

     

    Number of Sampling Hours Price per Sampling hour Monthly Charges

    (3 seconds * 10,000,000 invocations + 6 seconds * 20,000,000 invocations) / 3,600 seconds = 41,666.67 sampling hours

    $0.005 per hour

    (36,000-500)*0.005 = $177.50

Additional pricing resources

AWS Pricing Calculator

Easily calculate your monthly costs with AWS

Economics Resource Center

Additional resources for switching to AWS

Standard Product Icons (Features) Squid Ink
See FAQs for additional information

Visit the Amazon CodeGuru FAQs page.

Learn more 
Sign up for a free account
Sign up for a free account

Instantly get access to the AWS Free Tier. 

Sign up 
Standard Product Icons (Start Building) Squid Ink
Start building in the console

Get started building with Amazon CodeGuru in the AWS Management Console.

Sign in