

# View CloudFront reports in the console
<a name="reports"></a>

Each report provides detailed information and visualizations, so that you can optimize content delivery, identify performance bottlenecks, and make data-driven decisions. Whether you need to monitor cache efficiency, analyze traffic patterns, or understand your viewers better, you can use these reports to effectively monitor and analyze your CloudFront distributions.

You can view the following reports of your CloudFront activity in the console:

**Topics**
+ [View CloudFront cache statistics reports](cache-statistics.md)
+ [View CloudFront popular objects reports](popular-objects-report.md)
+ [View CloudFront top referrers reports](top-referrers-report.md)
+ [View CloudFront usage reports](usage-charts.md)
+ [View CloudFront viewers reports](viewers-reports.md)

Most of these reports are based on the data in CloudFront access logs, which contain detailed information about every user request that CloudFront receives. You don't need to enable access logs to view the reports. For more information, see [Access logs (standard logs)](AccessLogs.md).

# View CloudFront cache statistics reports
<a name="cache-statistics"></a>

The Amazon CloudFront cache statistics report shows the following information:
+ **Total requests** – The total number of requests for all HTTP status codes (for example, 200 or 404) and all methods (for example, GET, HEAD, or POST)
+ **Percentage of viewer requests by result type** – Hits, misses, and errors as a percentage of total viewer requests for the selected CloudFront distribution
+ **Bytes transferred to viewers** – Total bytes and bytes from misses
+ **HTTP status codes** – Viewer requests by HTTP status code
+ **Percentage of GET requests that didn't finish downloading** – Viewer GET requests that didn't finish downloading the requested object as a percentage of total requests

Data for these statistics is drawn from the same source as CloudFront access logs. However, you don't need to enable [access logging](AccessLogs.md) to view cache statistics.

You can display charts for a specified date range in the last 60 days, with data points every hour or every day. You can usually view data about requests that CloudFront received as recently as an hour ago, but data can occasionally be delayed by as much as 24 hours. 

**Topics**
+ [View CloudFront cache statistics reports in the console](#cache-statistics-howto)
+ [Download data in CSV format](#cache-statistics-csv)
+ [How cache statistics charts are related to data in the CloudFront standard logs (access logs)](#cache-statistics-data)

## View CloudFront cache statistics reports in the console
<a name="cache-statistics-howto"></a>

You can view the CloudFront cache statistics report in the console.<a name="cache-statistics-procedure"></a>

**To view the CloudFront cache statistics report**

1. Sign in to the AWS Management Console and open the CloudFront console at [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. In the navigation pane, choose **Cache Statistics**.

1. In the **CloudFront Cache Statistics Reports** pane, for **Start Date** and **End Date**, select the date range for which you want to display cache statistics charts. Available ranges depend on the value that you select for **Granularity**:
   + **Daily** – To display charts with one data point per day, select any date range in the previous 60 days.
   + **Hourly** – To display charts with one data point every hour, select any date range of up to 14 days within the previous 60 days.

   Dates and times are in Coordinated Universal Time (UTC).

1. For **Granularity**, specify whether to display one data point per day or one data point per hour in the charts. If you specify a date range greater than 14 days, the option to specify one data point per hour is not available.

1. For **Viewer Location**, choose the continent from which viewer requests originated, or choose **All Locations**. Cache statistics charts include data for requests that CloudFront received from the specified location.

1. In the **Distribution** list, select the distributions for which you want to display data in the usage charts:
   + **An individual distribution** – The charts display data for the selected CloudFront distribution. The **Distribution** list displays the distribution ID and alternate domain names (CNAMEs) for the distribution, if any. If a distribution doesn't have alternate domain names, the list includes origin domain names for the distribution.
   + **All distributions** – The charts display summed data for all distributions that are associated with the current AWS account, excluding distributions that you have deleted.

1. Choose **Update**.

**Tip**  
To view data for a daily or hourly data point within a chart, hover over the data point.
For charts that show data transferred, you can change the vertical scale to gigabytes, megabytes, or kilobytes.

## Download data in CSV format
<a name="cache-statistics-csv"></a>

You can download the cache statistics report in CSV format. This section explains how to download the report and describes the values in the report.<a name="cache-statistics-csv-procedure"></a>

**To download the cache statistics report in CSV format**

1. While viewing the cache statistics report, choose **CSV**.

1. In the **Opening *file name*** dialog box, choose whether to open or save the file.

### Information about the report
<a name="cache-statistics-csv-header"></a>

The first few rows of the report include the following information:

**Version**  
The version of the format for this CSV file.

**Report**  
The name of the report.

**DistributionID**  
The ID of the distribution that you ran the report for, or `ALL` if you ran the report for all distributions.

**StartDateUTC**  
The beginning of the date range for which you ran the report, in Coordinated Universal Time (UTC).

**EndDateUTC**  
The end of the date range for which you ran the report, in Coordinated Universal Time (UTC).

**GeneratedTimeUTC**  
The date and time on which you ran the report, in Coordinated Universal Time (UTC).

**Granularity**  
Whether each row in the report represents one hour or one day. 

**ViewerLocation**  
The continent that viewer requests originated from, or `ALL`, if you chose to download the report for all locations.

### Data in the cache statistics report
<a name="cache-statistics-csv-data"></a>

The report includes the following values:

**DistributionID**  
The ID of the distribution that you ran the report for, or `ALL` if you ran the report for all distributions.

**FriendlyName**  
An alternate domain name (CNAME) for the distribution, if any. If a distribution has no alternate domain names, the list includes an origin domain name for the distribution.

**ViewerLocation**  
The continent that viewer requests originated from, or `ALL`, if you chose to download the report for all locations.

**TimeBucket**  
The hour or the day that data applies to, in Coordinated Universal Time (UTC).

**RequestCount**  
The total number of requests for all HTTP status codes (for example, 200 or 404) and all methods (for example, GET, HEAD, or POST).

**HitCount**  
The number of viewer requests for which the object is served from a CloudFront edge cache.

**MissCount**  
The number of viewer requests for which the object isn't currently in an edge cache, so CloudFront must get the object from your origin.

**ErrorCount**  
The number of viewer requests that resulted in an error, so CloudFront didn't serve the object.

**IncompleteDownloadCount**  
The number of viewer requests for which the viewer started but didn't finish downloading the object.

**HTTP2xx**  
The number of viewer requests for which the HTTP status code was a 2xx value (succeeded).

**HTTP3xx**  
The number of viewer requests for which the HTTP status code was a 3xx value (additional action is required).

**HTTP4xx**  
The number of viewer requests for which the HTTP status code was a 4xx value (client error).

**HTTP5xx**  
The number of viewer requests for which the HTTP status code was a 5xx value (server error).

**TotalBytes**  
The total number of bytes served to viewers by CloudFront in response to all requests for all HTTP methods.

**BytesFromMisses**  
The number of bytes served to viewers for objects that were not in the edge cache at the time of the request. This value is a good approximation of bytes transferred from your origin to CloudFront edge caches. However, it excludes requests for objects that are already in the edge cache but that have expired.

## How cache statistics charts are related to data in the CloudFront standard logs (access logs)
<a name="cache-statistics-data"></a>

The following table shows how cache statistics charts in the CloudFront console correspond with values in CloudFront access logs. For more information about CloudFront access logs, see [Access logs (standard logs)](AccessLogs.md).

**Total requests**  
This chart shows the total number of requests for all HTTP status codes (for example, 200 or 404) and all methods (for example, `GET`, `HEAD`, or `POST`). Total requests shown in this chart equal the total number of requests in the access log files for the same time period.

**Percentage of viewer requests by result type**  
This chart shows hits, misses, and errors as a percentage of total viewer requests for the selected CloudFront distribution:  
+ **Hit** – A viewer request for which the object is served from a CloudFront edge cache. In access logs, these are requests for which the value of `x-edge-response-result-type` is `Hit`.
+ **Miss** – A viewer request for which the object isn't currently in an edge cache, so CloudFront must get the object from your origin. In access logs, these are requests for which the value of `x-edge-response-result-type` is `Miss`.
+ **Error** – A viewer request that resulted in an error, so CloudFront didn't serve the object. In access logs, these are requests for which the value of `x-edge-response-result-type` is `Error`, `LimitExceeded`, or `CapacityExceeded`.
The chart does not include refresh hits—requests for objects that are in the edge cache but that have expired. In access logs, refresh hits are requests for which the value of `x-edge-response-result-type` is `RefreshHit`.

**Bytes transferred to viewers**  
This chart shows two values:  
+ **Total bytes** – The total number of bytes served to viewers by CloudFront in response to all requests for all HTTP methods. In CloudFront access logs, **Total Bytes** is the sum of the values in the `sc-bytes` column for all of the requests during the same time period.
+ **Bytes from misses** – The number of bytes served to viewers for objects that were not in the edge cache at the time of the request. In CloudFront access logs, **bytes from misses** is the sum of the values in the `sc-bytes` column for requests for which the value of `x-edge-result-type` is `Miss`. This value is a good approximation of bytes transferred from your origin to CloudFront edge caches. However, it excludes requests for objects that are already in the edge cache but that have expired.

**HTTP status codes**  
This chart shows viewer requests by HTTP status code. In CloudFront access logs, status codes appear in the `sc-status` column:  
+ **2xx** – The request succeeded.
+ **3xx** – Additional action is required. For example, 301 (Moved Permanently) means that the requested object has moved to a different location.
+ **4xx** – The client apparently made an error. For example, 404 (Not Found) means that the client requested an object that could not be found.
+ **5xx** – The origin server didn't fill the request. For example, 503 (Service Unavailable) means that the origin server is currently unavailable.

**Percentage of GET requests that didn't finish downloading**  
This chart shows viewer `GET` requests that didn't finish downloading the requested object as a percentage of total requests. Typically, downloading an object doesn't complete because the viewer canceled the download, for example, by clicking a different link or by closing the browser. In CloudFront access logs, these requests have a value of `200` in the `sc-status` column and a value of `Error` in the `x-edge-result-type` column.

# View CloudFront popular objects reports
<a name="popular-objects-report"></a>

View the Amazon CloudFront popular objects report to see the 50 most popular objects for a distribution during a specified date range in the previous 60 days. You can also view statistics about those objects, including the following:
+ Number of requests for the object
+ Number of hits and misses
+ Hit ratio
+ Number of bytes served for misses
+ Total bytes served
+ Number of incomplete downloads
+ Number of requests by HTTP status code (2xx, 3xx, 4xx, and 5xx)

Data for these statistics is drawn from the same source as CloudFront access logs. However, you don't need to enable[ access logging](AccessLogs.md) to view popular objects.

**Topics**
+ [View CloudFront popular objects reports in the console](#popular-objects-howto)
+ [How CloudFront calculates popular objects statistics](#popular-objects-calculate)
+ [Download data in CSV format](#popular-objects-csv)
+ [How data in the popular objects report is related to data in the CloudFront standard logs (access logs)](#popular-objects-data)

## View CloudFront popular objects reports in the console
<a name="popular-objects-howto"></a>

You can view the CloudFront popular objects report in the console.<a name="popular-objects-report-procedure"></a>

**To view popular objects for a CloudFront distribution**

1. Sign in to the AWS Management Console and open the CloudFront console at [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. In the navigation pane, choose **Popular Objects**.

1. In the **CloudFront Popular Objects Report** pane, for **Start Date** and **End Date**, select the date range for which you want to display a list of popular objects. You can choose any date range in the previous 60 days.

   Dates and times are in Coordinated Universal Time (UTC).

1. In the **Distribution** list, select the distribution for which you want to display a list of popular objects. 

1. Choose **Update**.

## How CloudFront calculates popular objects statistics
<a name="popular-objects-calculate"></a>

To get an accurate count of the top 50 objects in your distribution, CloudFront counts the requests for all of your objects in 10-minute intervals beginning at midnight and keeps a running total of the top 150 objects for the next 24 hours. (CloudFront also retains daily totals for the top 150 objects for 60 days.)

Near the bottom of the list, objects constantly rise onto or drop off the list, so the totals for those objects are approximations. The 50 objects at the top of the list of 150 objects might rise and fall within the list, but they rarely drop off the list altogether, so the totals for those objects are more reliable.

When an object drops off the list of the top 150 objects and then rises onto the list again over the course of a day, CloudFront adds an estimated number of requests for the period that the object was missing from the list. The estimate is based on the number of requests received by whichever object was at the bottom of the list during that time period.

If the object rises into the top 50 objects later in the day, the estimates of the number of requests that CloudFront received while the object was out of the top 150 objects usually causes the number of requests in the popular objects report to exceed the number of requests that appear in the access logs for that object.

## Download data in CSV format
<a name="popular-objects-csv"></a>

You can download the popular objects report in CSV format. This section explains how to download the report and describes the values in the report.<a name="popular-objects-csv-procedure"></a>

**To download the popular objects report in CSV format**

1. While viewing the popular objects report, choose **CSV**.

1. In the **Opening *file name*** dialog box, choose whether to open or save the file.

### Information about the report
<a name="popular-objects-csv-header"></a>

The first few rows of the report include the following information:

**Version**  
The version of the format for this CSV file.

**Report**  
The name of the report.

**DistributionID**  
The ID of the distribution that you ran the report for.

**StartDateUTC**  
The beginning of the date range for which you ran the report, in Coordinated Universal Time (UTC).

**EndDateUTC**  
The end of the date range for which you ran the report, in Coordinated Universal Time (UTC).

**GeneratedTimeUTC**  
The date and time on which you ran the report, in Coordinated Universal Time (UTC).

### Data in the popular objects report
<a name="popular-objects-csv-data"></a>

The report includes the following values:

**DistributionID**  
The ID of the distribution that you ran the report for.

**FriendlyName**  
An alternate domain name (CNAME) for the distribution, if any. If a distribution has no alternate domain names, the list includes an origin domain name for the distribution.

**Object**  
The last 500 characters of the URL for the object.

**RequestCount**  
The total number of requests for this object.

**HitCount**  
The number of viewer requests for which the object is served from a CloudFront edge cache.

**MissCount**  
The number of viewer requests for which the object isn't currently in an edge cache, so CloudFront must get the object from your origin.

**HitCountPct**  
The value of `HitCount` as a percentage of the value of `RequestCount`.

**BytesFromMisses**  
The number of bytes served to viewers for this object when the object was not in the edge cache at the time of the request. 

**TotalBytes**  
The total number of bytes served to viewers by CloudFront for this object in response to all requests for all HTTP methods.

**IncompleteDownloadCount**  
The number of viewer requests for this object for which the viewer started but didn't finish downloading the object.

**HTTP2xx**  
The number of viewer requests for which the HTTP status code was a 2xx value (succeeded).

**HTTP3xx**  
The number of viewer requests for which the HTTP status code was a 3xx value (additional action is required).

**HTTP4xx**  
The number of viewer requests for which the HTTP status code was a 4xx value (client error).

**HTTP5xx**  
The number of viewer requests for which the HTTP status code was a 5xx value (server error).

## How data in the popular objects report is related to data in the CloudFront standard logs (access logs)
<a name="popular-objects-data"></a>

The following list shows how values in the popular objects report in the CloudFront console correspond with values in CloudFront access logs. For more information about CloudFront access logs, see [Access logs (standard logs)](AccessLogs.md).

**URL**  
The last 500 characters of the URL that viewers use to access the object.

**Requests**  
The total number of requests for the object. This value generally corresponds closely with the number of `GET` requests for the object in CloudFront access logs. 

**Hits**  
The number of viewer requests for which the object was served from a CloudFront edge cache. In access logs, these are requests for which the value of `x-edge-response-result-type` is `Hit`.

**Misses**  
The number of viewer requests for which the object wasn't in an edge cache, so CloudFront retrieved the object from your origin. In access logs, these are requests for which the value of `x-edge-response-result-type` is `Miss`.

**Hit ratio**  
The value of the **Hits** column as a percentage of the value of the **Requests** column.

**Bytes from misses**  
The number of bytes served to viewers for objects that were not in the edge cache at the time of the request. In CloudFront access logs, **bytes from misses** is the sum of the values in the `sc-bytes` column for requests for which the value of `x-edge-result-type` is `Miss`. 

**Total bytes**  
The total number of bytes that CloudFront served to viewers in response to all requests for the object for all HTTP methods. In CloudFront access logs, **total bytes** is the sum of the values in the `sc-bytes` column for all of the requests during the same time period.

**Incomplete downloads**  
The number of viewer requests that did not finish downloading the requested object. Typically, the reason that a download doesn't complete is that the viewer canceled it, for example, by clicking a different link or by closing the browser. In CloudFront access logs, these requests have a value of `200` in the `sc-status` column and a value of `Error` in the `x-edge-result-type` column.

**2xx**  
The number of requests for which the HTTP status code is `2xx`, `Successful`. In CloudFront access logs, status codes appear in the `sc-status` column.

**3xx**  
The number of requests for which the HTTP status code is `3xx`, `Redirection`. `3xx` status codes indicate that additional action is required. For example, 301 (Moved Permanently) means that the requested object has moved to a different location.

**4xx**  
The number of requests for which the HTTP status code is `4xx`, `Client Error`. `4xx` status codes indicate that the client apparently made an error. For example, 404 (Not Found) means that the client requested an object that could not be found.

**5xx**  
The number of requests for which the HTTP status code is `5xx`, `Server Error`. `5xx` status codes indicate that the origin server didn't fill the request. For example, 503 (Service Unavailable) means that the origin server is currently unavailable.

# View CloudFront top referrers reports
<a name="top-referrers-report"></a>

The CloudFront top referrers report includes the following for any date range in the previous 60 days:
+ Top 25 referrers (domains of websites that originated the most HTTP and HTTPS requests for objects that CloudFront is distributing for your distribution)
+ Number of requests from a referrer
+ Number of requests from a referrer as a percentage of the total number of requests during the specified period

Data for the top referrers report is drawn from the same source as CloudFront access logs. However, you don't need to enable [access logging](AccessLogs.md) to view the top referrers.

Top referrers can be search engines, other websites that link directly to your objects, or your own website. For example, if `https://example.com/index.html` links to 10 graphics, `example.com` is the referrer for all 10 graphics.

**Note**  
If a user enters a URL directly into the address line of a browser, there is no referrer for the requested object.

**Topics**
+ [View CloudFront top referrers reports in the console](#top-referrers-howto)
+ [How CloudFront calculates top referrers statistics](#top-referrers-calculate)
+ [Download data in CSV format](#top-referrers-csv)
+ [How data in the top referrers report is related to data in the CloudFront standard logs (access logs)](#top-referrers-data)

## View CloudFront top referrers reports in the console
<a name="top-referrers-howto"></a>

You can view the CloudFront top referrers report in the console.<a name="top-referrers-report-procedure"></a>

**To view top referrers for a CloudFront distribution**

1. Sign in to the AWS Management Console and open the CloudFront console at [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. In the navigation pane, choose **Top Referrers**.

1. In the **CloudFront Top Referrers Report** pane, for **Start Date** and **End Date**, select the date range for which you want to display a list of top referrers. 

   Dates and times are in Coordinated Universal Time (UTC).

1. In the **Distribution** list, select the distribution for which you want to display a list of top referrers. 

1. Choose **Update**.

## How CloudFront calculates top referrers statistics
<a name="top-referrers-calculate"></a>

To get an accurate count of the top 25 referrers, CloudFront counts the requests for all of your objects in 10-minute intervals and keeps a running total of the top 75 referrers. Near the bottom of the list, referrers constantly rise onto or drop off the list, so the totals for those referrers are approximations.

The 25 referrers at the top of the list of 75 referrers might rise and fall within the list, but they rarely drop off of the list altogether, so the totals for those referrers typically are more reliable.

## Download data in CSV format
<a name="top-referrers-csv"></a>

You can download the top referrers report in CSV format. This section explains how to download the report and describes the values in the report.<a name="top-referrers-csv-procedure"></a>

**To download the top referrers report in CSV format**

1. While viewing the Top Referrers report, choose **CSV**.

1. In the **Opening *file name*** dialog box, choose whether to open or save the file.

### Information about the report
<a name="top-referrers-csv-header"></a>

The first few rows of the report include the following information:

**Version**  
The version of the format for this CSV file.

**Report**  
The name of the report.

**DistributionID**  
The ID of the distribution that you ran the report for, or `ALL` if you ran the report for all distributions.

**StartDateUTC**  
The beginning of the date range for which you ran the report, in Coordinated Universal Time (UTC).

**EndDateUTC**  
The end of the date range for which you ran the report, in Coordinated Universal Time (UTC).

**GeneratedTimeUTC**  
The date and time on which you ran the report, in Coordinated Universal Time (UTC).

### Data in the top referrers report
<a name="top-referrers-csv-data"></a>

The report includes the following values:

**DistributionID**  
The ID of the distribution that you ran the report for, or `ALL` if you ran the report for all distributions.

**FriendlyName**  
An alternate domain name (CNAME) for the distribution, if any. If a distribution has no alternate domain names, the list includes an origin domain name for the distribution.

**Referrer**  
The domain name of the referrer.

**RequestCount**  
The total number of requests from the domain name in the `Referrer` column.

**RequestsPct**  
The number of requests submitted by the referrer as a percentage of the total number of requests during the specified period.

## How data in the top referrers report is related to data in the CloudFront standard logs (access logs)
<a name="top-referrers-data"></a>

The following list shows how values in the Top Referrers report in the CloudFront console correspond with values in CloudFront access logs. For more information about CloudFront access logs, see [Access logs (standard logs)](AccessLogs.md).

**Referrer**  
The domain name of the referrer. In access logs, referrers are listed in the `cs(Referer)` column. 

**Request count**  
The total number of requests from the domain name in the **Referrer** column. This value generally corresponds closely with the number of `GET` requests from the referrer in CloudFront access logs. 

**Request %**  
The number of requests submitted by the referrer as a percentage of the total number of requests during the specified period. If you have more than 25 referrers, then you can't calculate **Request %** based on the data in this table because the **request count** column doesn't include all of the requests during the specified period.

# View CloudFront usage reports
<a name="usage-charts"></a>

The CloudFront usage reports include the following information:
+ **Number of requests** – Shows the total number of requests that CloudFront responds to from edge locations in the selected region during each time interval for the specified CloudFront distribution.
+ **Data transferred by protocol** and **data transferred by destination** – Both show the total amount of data transferred from CloudFront edge locations in the selected region during each time interval for the specified CloudFront distribution. They separate the data differently, as follows:
  + **By protocol** – Separates the data by protocol: HTTP or HTTPS.
  + **By destination** – Separates the data by destination: to your viewers or to your origin.

The CloudFront usage report is based on the AWS usage report for CloudFront. This report doesn't require any additional configuration. For more information, see [View the AWS usage report for CloudFront](reports-billing.md#usage-report).

You can view reports for a specified date range in the last 60 days, with data points every hour or every day. You can usually view data about requests that CloudFront received as recently as four hours ago, but data can occasionally be delayed by as much as 24 hours.

For more information, see [How the usage charts are related to data in the CloudFront usage report](#usage-charts-table).

**Topics**
+ [View CloudFront usage reports in the console](#usage-charts-howto)
+ [Download data in CSV format](#usage-csv)
+ [How the usage charts are related to data in the CloudFront usage report](#usage-charts-table)

## View CloudFront usage reports in the console
<a name="usage-charts-howto"></a>

You can view the CloudFront usage report in the console.<a name="usage-charts-procedure"></a>

**To view CloudFront usage reports**

1. Sign in to the AWS Management Console and open the CloudFront console at [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. In the navigation pane, choose **Usage Reports**.

1. In the **CloudFront Usage Reports** pane, for **Start Date** and **End Date**, select the date range for which you want to display usage charts. Available ranges depend on the value that you select for **Granularity**:
   + **Daily** — To display charts with one data point per day, select any date range in the previous 60 days. 
   + **Hourly** — To display charts with one data point every hour, select any date range of up to 14 days within the previous 60 days. 

   Dates and times are in Coordinated Universal Time (UTC).

1. For **Granularity**, specify whether to display one data point per day or one data point per hour in the charts. If you specify a date range greater than 14 days, the option to specify one data point per hour is not available.

1. For **Billing Region**, choose the CloudFront billing region that has the data you want to view, or choose **All Regions**. Usage charts include data for requests that CloudFront processes in edge locations in the specified region. The region where CloudFront processes requests might or might not correspond with the location of your viewers. 

   Select only Regions that are included in the price class for your distribution. Otherwise, the usage charts probably won't contain any data. For example, if you chose Price Class 200 for your distribution, the South America and Australia billing regions are not included, so CloudFront generally won't process your requests from those regions. For more information about price classes, see [CloudFront pricing](https://aws.amazon.com/cloudfront/pricing/).

1. In the **Distribution** list, select the distributions for which you want to display data in the usage charts: 
   + **An individual distribution** — The charts display data for the selected CloudFront distribution. The **Distribution** list displays the distribution ID and alternate domain names (CNAMEs) for the distribution, if any. If a distribution has no alternate domain names, the list includes origin domain names for the distribution.
   + **All distributions (excludes deleted)** — The charts display summed data for all distributions that are associated with the current AWS account, excluding distributions that you have deleted.
   + **All Deleted Distributions** — The charts display summed data for all distributions that are associated with the current AWS account and that were deleted in the last 60 days.

1. Choose **Update Graphs**.

**Tip**  
To view data for a daily or hourly data point within a chart, hover over the data point. 
For charts that show data transferred, note that you can change the vertical scale to gigabytes, megabytes, or kilobytes. 

## Download data in CSV format
<a name="usage-csv"></a>

You can download the usage report in CSV format. This section explains how to download the report and describes the values in the report.<a name="usage-csv-procedure"></a>

**To download the usage report in CSV format**

1. While viewing the Usage report, choose **CSV**.

1. In the **Opening *file name*** dialog box, choose whether to open or save the file.

### Information about the report
<a name="usage-csv-header"></a>

The first few rows of the report include the following information:

**Version**  
The version of the format for this CSV file.

**Report**  
The name of the report.

**DistributionID**  
The ID of the distribution that you ran the report for, `ALL` if you ran the report for all distributions, or `ALL_DELETED` if you ran the report for all deleted distributions.

**StartDateUTC**  
The beginning of the date range for which you ran the report, in Coordinated Universal Time (UTC).

**EndDateUTC**  
The end of the date range for which you ran the report, in Coordinated Universal Time (UTC).

**GeneratedTimeUTC**  
The date and time on which you ran the report, in Coordinated Universal Time (UTC).

**Granularity**  
Whether each row in the report represents one hour or one day. 

**BillingRegion**  
The continent that viewer requests originated from, or `ALL`, if you chose to download the report for all billing regions.

### Data in the usage report
<a name="usage-csv-data"></a>

The report includes the following values:

**DistributionID**  
The ID of the distribution that you ran the report for, `ALL` if you ran the report for all distributions, or `ALL_DELETED` if you ran the report for all deleted distributions.

**FriendlyName**  
An alternate domain name (CNAME) for the distribution, if any. If a distribution has no alternate domain names, the list includes an origin domain name for the distribution.

**BillingRegion**  
The CloudFront billing region that you ran the report for, or `ALL`.

**TimeBucket**  
The hour or the day that data applies to, in Coordinated Universal Time (UTC).

**HTTP**  
The number of HTTP requests that CloudFront responded to from edge locations in the selected region during each time interval for the specified CloudFront distribution. Values include:  
+ The number of `GET` and `HEAD` requests, which cause CloudFront to transfer data to your viewers
+ The number of `DELETE`, `OPTIONS`, `PATCH`, `POST`, and `PUT` requests, which cause CloudFront to transfer data to your origin

**HTTPS**  
The number of HTTPS requests that CloudFront responded to from edge locations in the selected region during each time interval for the specified CloudFront distribution. Values include:  
+ The number of `GET` and `HEAD` requests, which cause CloudFront to transfer data to your viewers
+ The number of `DELETE`, `OPTIONS`, `PATCH`, `POST`, and `PUT` requests, which cause CloudFront to transfer data to your origin

**HTTPBytes**  
The total amount of data transferred over HTTP from CloudFront edge locations in the selected billing region during the time period for the specified CloudFront distribution. Values include:  
+ Data transferred from CloudFront to your viewers in response to `GET` and `HEAD` requests
+ Data transferred from your viewers to CloudFront for `DELETE`, `OPTIONS`, `PATCH`, `POST`, and `PUT` requests
+ Data transferred from CloudFront to your viewers in response to `DELETE`, `OPTIONS`, `PATCH`, `POST`, and `PUT` requests

**HTTPSBytes**  
The total amount of data transferred over HTTPS from CloudFront edge locations in the selected billing region during the time period for the specified CloudFront distribution. Values include:  
+ Data transferred from CloudFront to your viewers in response to `GET` and `HEAD` requests
+ Data transferred from your viewers to CloudFront for `DELETE`, `OPTIONS`, `PATCH`, `POST`, and `PUT` requests
+ Data transferred from CloudFront to your viewers in response to `DELETE`, `OPTIONS`, `PATCH`, `POST`, and `PUT` requests

**BytesIn**  
The total amount of data transferred from CloudFront to your origin for `DELETE`, `OPTIONS`, `PATCH`, `POST`, and `PUT` requests in the selected region during each time interval for the specified CloudFront distribution. 

**BytesOut**  
The total amount of data transferred over HTTP and HTTPS from CloudFront to your viewers in the selected region during each time interval for the specified CloudFront distribution. Values include:  
+ Data transferred from CloudFront to your viewers in response to `GET` and `HEAD` requests
+ Data transferred from CloudFront to your viewers in response to `DELETE`, `OPTIONS`, `PATCH`, `POST`, and `PUT` requests

## How the usage charts are related to data in the CloudFront usage report
<a name="usage-charts-table"></a>

The following list shows how the usage charts in the CloudFront console correspond with values in the **Usage Type** column in the CloudFront usage report.

**Topics**
+ [Number of requests](#usage-charts-requests)
+ [Data transferred by protocol](#usage-charts-data-transferred-by-protocol)
+ [Data transferred by destination](#usage-charts-data-transferred-by-destination)

### Number of requests
<a name="usage-charts-requests"></a>

This chart shows the total number of requests that CloudFront responds to from edge locations in the selected region during each time interval for the specified CloudFront distribution, separated by protocol (HTTP or HTTPS) and type (static, dynamic, or proxy).

**Number of HTTP requests**  
+ *region***-Requests-HTTP-Static:** Number of HTTP `GET` and `HEAD` requests served for objects with TTL ≥ 3600 seconds
+ *region***-Requests-HTTP-Dynamic:** Number of HTTP `GET` and `HEAD` requests served for objects with TTL < 3600 seconds
+ *region***-Requests-HTTP-Proxy:** Number of HTTP `DELETE`, `OPTIONS`, `PATCH`, `POST`, and `PUT` requests that CloudFront forwards to your origin

**Number of HTTPS requests**  
+ *region***-Requests-HTTPS-Static:** Number of HTTPS `GET` and `HEAD` requests served for objects with TTL ≥ 3600 seconds
+ *region***-Requests-HTTPS-Dynamic:** Number of HTTPS `GET` and `HEAD` requests served for objects with TTL < 3600 seconds
+ *region***-Requests-HTTPS-Proxy:** Number of HTTPS `DELETE`, `OPTIONS`, `PATCH`, `POST`, and `PUT` requests that CloudFront forwards to your origin

### Data transferred by protocol
<a name="usage-charts-data-transferred-by-protocol"></a>

This chart shows the total amount of data transferred from CloudFront edge locations in the selected region during each time interval for the specified CloudFront distribution, separated by protocol (HTTP or HTTPS), type (static, dynamic, or proxy), and destination (viewers or origin).

**Data transferred over HTTP**  
+ *region***-Out-Bytes-HTTP-Static:** Bytes served via HTTP for objects with TTL ≥ 3600 seconds
+ *region***-Out-Bytes-HTTP-Dynamic:** Bytes served via HTTP for objects with TTL < 3600 seconds
+ *region***-Out-Bytes-HTTP-Proxy:** Bytes returned from CloudFront to viewers via HTTP in response to `DELETE`, `OPTIONS`, `PATCH`, `POST`, and `PUT` requests
+ *region***-Out-OBytes-HTTP-Proxy:** Total bytes transferred via HTTP from CloudFront edge locations to your origin in response to `DELETE`, `OPTIONS`, `PATCH`, `POST`, and `PUT` requests

**Data transferred over HTTPS**  
+ *region***-Out-Bytes-HTTPS-Static:** Bytes served via HTTPS for objects with TTL ≥ 3600 seconds
+ *region***-Out-Bytes-HTTPS-Dynamic:** Bytes served via HTTPS for objects with TTL < 3600 seconds
+ *region***-Out-Bytes-HTTPS-Proxy:** Bytes returned from CloudFront to viewers via HTTPS in response to `DELETE`, `OPTIONS`, `PATCH`, `POST`, and `PUT` requests
+ *region***-Out-OBytes-HTTPS-Proxy:** Total bytes transferred via HTTPS from CloudFront edge locations to your origin in response to `DELETE`, `OPTIONS`, `PATCH`, `POST`, and `PUT` requests

### Data transferred by destination
<a name="usage-charts-data-transferred-by-destination"></a>

This chart shows the total amount of data transferred from CloudFront edge locations in the selected region during each time interval for the specified CloudFront distribution, separated by destination (viewers or origin), protocol (HTTP or HTTPS), and type (static, dynamic, or proxy).

**Data transferred from CloudFront to your viewers**  
+ *region***-Out-Bytes-HTTP-Static:** Bytes served via HTTP for objects with TTL ≥ 3600 seconds
+ *region***-Out-Bytes-HTTPS-Static:** Bytes served via HTTPS for objects with TTL ≥ 3600 seconds
+ *region***-Out-Bytes-HTTP-Dynamic:** Bytes served via HTTP for objects with TTL < 3600 seconds
+ *region***-Out-Bytes-HTTPS-Dynamic:** Bytes served via HTTPS for objects with TTL < 3600 seconds
+ *region***-Out-Bytes-HTTP-Proxy:** Bytes returned from CloudFront to viewers via HTTP in response to `DELETE`, `OPTIONS`, `PATCH`, `POST`, and `PUT` requests
+ *region***-Out-Bytes-HTTPS-Proxy:** Bytes returned from CloudFront to viewers via HTTPS in response to `DELETE`, `OPTIONS`, `PATCH`, `POST`, and `PUT` requests

**Data transferred from CloudFront to your origin**  
+ *region***-Out-OBytes-HTTP-Proxy:** Total bytes transferred via HTTP from CloudFront edge locations to your origin in response to `DELETE`, `OPTIONS`, `PATCH`, `POST`, and `PUT` requests
+ *region***-Out-OBytes-HTTPS-Proxy:** Total bytes transferred via HTTPS from CloudFront edge locations to your origin in response to `DELETE`, `OPTIONS`, `PATCH`, `POST`, and `PUT` requests

# View CloudFront viewers reports
<a name="viewers-reports"></a>

The CloudFront viewers reports include the following information for any date range in the previous 60 days:
+ **Devices** – The types of devices most frequently used to access your content (such as Desktop or Mobile)
+ **Browsers** – The top 10 browsers most frequently used to access your content (such as Chrome or Firefox)
+ **Operating systems** – The top 10 operating systems most frequently used when accessing your content (such as Linux, macOS, or Windows)
+ **Locations** – The top 50 locations (countries or U.S. states/territories) of the viewers that most frequently access your content
  + You can also view locations with hourly data points for any date range of up to 14 days in the previous 60 days

**Note**  
You don't need to enable [access logging](AccessLogs.md) to see viewers charts and reports.

**Topics**
+ [View viewers charts and reports in the console](#viewers-reports-displaying)
+ [Download data in CSV format](#viewer-csv)
+ [Data included in the viewers reports](#viewer-csv-header)
+ [How data in the locations report is related to data in the CloudFront standard logs (access logs)](#viewers-reports-data)

## View viewers charts and reports in the console
<a name="viewers-reports-displaying"></a>

You can view CloudFront viewers charts and reports in the console.<a name="viewers-reports-procedure"></a>

**To view CloudFront viewers charts and reports**

1. Sign in to the AWS Management Console and open the CloudFront console at [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. In the navigation pane, choose **Viewers**.

1. In the **CloudFront Viewers** pane, for **Start Date** and **End Date**, select the date range for which you want to display viewer charts and reports. 

   For the Locations chart, available ranges depend on the value that you select for **Granularity**:
   + **Daily** – To display charts with one data point per day, select any date range in the previous 60 days.
   + **Hourly** – To display charts with one data point every hour, select any date range of up to 14 days within the previous 60 days.

   Dates and times are in Coordinated Universal Time (UTC).

1. (Browsers and Operating Systems charts only) For **Grouping**, specify whether you want to group browsers and operating systems by name (Chrome, Firefox) or by name and version (Chrome 40.0, Firefox 35.0). 

1. (Locations chart only) For **Granularity**, specify whether to display one data point per day or one data point per hour in the charts. If you specify a date range greater than 14 days, the option to specify one data point per hour is not available.

1. (Locations chart only) For **Details**, specify whether to display the top locations by countries or by U.S. states.

1. In the **Distribution** list, select the distribution for which you want to display data in the usage charts:
   + **An individual distribution** – The charts display data for the selected CloudFront distribution. The **Distribution** list displays the distribution ID and an alternate domain name (CNAME) for the distribution, if any. If a distribution has no alternate domain names, the list includes an origin domain name for the distribution.
   + **All distributions (excludes deleted)** – The charts display summed data for all distributions that are associated with the current AWS account, excluding distributions that you have deleted.

1. Choose **Update**.

To view data for a daily or hourly data point within a chart, hover over the data point.

## Download data in CSV format
<a name="viewer-csv"></a>

You can download each of the viewer reports in CSV format. This section explains how to download the reports and describes the values in the report.<a name="viewer-csv-procedure"></a>

**To download the viewer reports in CSV format**

1. While viewing the Viewer report, choose **CSV**.

1. Choose the data that you want to download, for example, **Devices** or **Devices Trends**.

1. In the **Opening *file name*** dialog box, choose whether to open or save the file.

## Data included in the viewers reports
<a name="viewer-csv-header"></a>

The first few rows of each report include the following information:

**Version**  
The version of the format for this CSV file.

**Report**  
The name of the report.

**DistributionID**  
The ID of the distribution that you ran the report for, or `ALL` if you ran the report for all distributions.

**StartDateUTC**  
The beginning of the date range for which you ran the report, in Coordinated Universal Time (UTC).

**EndDateUTC**  
The end of the date range for which you ran the report, in Coordinated Universal Time (UTC).

**GeneratedTimeUTC**  
The date and time on which you ran the report, in Coordinated Universal Time (UTC).

**Grouping (browsers and operating systems reports only)**  
Whether the data is grouped by the name or by the name and version of the browser or operating system.

**Granularity**  
Whether each row in the report represents one hour or one day. 

**Details (locations report only)**  
Whether requests are listed by country or by U.S. state.

The following topics describe the information in the different viewers reports.

**Topics**
+ [Devices report](#viewer-devices-csv-data)
+ [Device trends report](#viewer-device-trends-csv-data)
+ [Browsers report](#viewer-browsers-csv-data)
+ [Browser trends report](#viewer-browser-trends-csv-data)
+ [Operating systems report](#viewer-operating-system-csv-data)
+ [Operating system trends report](#viewer-operating-system-trends-csv-data)
+ [Locations report](#viewer-locations-csv-data)
+ [Location trends report](#viewer-location-trends-csv-data)

### Devices report
<a name="viewer-devices-csv-data"></a>

The report includes the following values:

**DistributionID**  
The ID of the distribution that you ran the report for, or `ALL` if you ran the report for all distributions.

**FriendlyName**  
An alternate domain name (CNAME) for the distribution, if any. If a distribution has no alternate domain names, the list includes an origin domain name for the distribution.

**Requests**  
The number of requests that CloudFront received from each type of device.

**RequestsPct**  
The number of requests that CloudFront received from each type of device as a percentage of the total number of requests that CloudFront received from all devices.

**Custom**  
Requests for which the value of the `User-Agent` HTTP header was not associated with one of the standard device types, for example, `Desktop` or `Mobile`.

### Device trends report
<a name="viewer-device-trends-csv-data"></a>

The report includes the following values:

**DistributionID**  
The ID of the distribution that you ran the report for, or `ALL` if you ran the report for all distributions.

**FriendlyName**  
An alternate domain name (CNAME) for the distribution, if any. If a distribution has no alternate domain names, the list includes an origin domain name for the distribution.

**TimeBucket**  
The hour or the day that the data applies to, in Coordinated Universal Time (UTC).

**Desktop**  
The number of requests that CloudFront received from desktop computers during the period.

**Mobile**  
The number of requests that CloudFront received from mobile devices during the period. Mobile devices can include both tablets and mobile phones. If CloudFront can't determine whether a request originated from a mobile device or a tablet, it's counted in the `Mobile` column.

**Smart-TV**  
The number of requests that CloudFront received from smart TVs during the period.

**Tablet**  
The number of requests that CloudFront received from tablets during the period. If CloudFront can't determine whether a request originated from a mobile device or a tablet, it's counted in the `Mobile` column.

**Unknown**  
Requests for which the value of the `User-Agent` HTTP header was not associated with one of the standard device types, for example, `Desktop` or `Mobile`.

**Empty**  
The number of requests that CloudFront received that didn't include a value in the HTTP `User-Agent` header during the period.

### Browsers report
<a name="viewer-browsers-csv-data"></a>

The report includes the following values:

**DistributionID**  
The ID of the distribution that you ran the report for, or `ALL` if you ran the report for all distributions.

**FriendlyName**  
An alternate domain name (CNAME) for the distribution, if any. If a distribution has no alternate domain names, the list includes an origin domain name for the distribution.

**Group**  
The browser or the browser and version that CloudFront received requests from, depending on the value of `Grouping`. In addition to browser names, possible values include the following:  
+ **Bot/Crawler** – primarily requests from search engines that are indexing your content.
+ **Empty** – requests for which the value of the `User-Agent` HTTP header was empty.
+ **Other** – browsers that CloudFront identified but that aren't among the most popular. If `Bot/Crawler`, `Empty`, and/or `Unknown` don't appear among the first nine values, then they're also included in `Other`.
+ **Unknown** – requests for which the value of the `User-Agent` HTTP header was not associated with a standard browser. Most requests in this category come from custom applications or scripts.

**Requests**  
The number of requests that CloudFront received from each type of browser.

**RequestsPct**  
The number of requests that CloudFront received from each type of browser as a percentage of the total number of requests that CloudFront received during the time period.

### Browser trends report
<a name="viewer-browser-trends-csv-data"></a>

The report includes the following values:

**DistributionID**  
The ID of the distribution that you ran the report for, or `ALL` if you ran the report for all distributions.

**FriendlyName**  
An alternate domain name (CNAME) for the distribution, if any. If a distribution has no alternate domain names, the list includes an origin domain name for the distribution.

**TimeBucket**  
The hour or the day that the data applies to, in Coordinated Universal Time (UTC).

**(Browsers)**  
The remaining columns in the report list the browsers or the browsers and their versions, depending on the value of `Grouping`. In addition to browser names, possible values include the following:  
+ **Bot/Crawler** – primarily requests from search engines that are indexing your content.
+ **Empty** – requests for which the value of the `User-Agent` HTTP header was empty.
+ **Other** – browsers that CloudFront identified but that aren't among the most popular. If `Bot/Crawler`, `Empty`, and/or `Unknown` don't appear among the first nine values, then they're also included in `Other`.
+ **Unknown** – requests for which the value of the `User-Agent` HTTP header was not associated with a standard browser. Most requests in this category come from custom applications or scripts.

### Operating systems report
<a name="viewer-operating-system-csv-data"></a>

The report includes the following values:

**DistributionID**  
The ID of the distribution that you ran the report for, or `ALL` if you ran the report for all distributions.

**FriendlyName**  
An alternate domain name (CNAME) for the distribution, if any. If a distribution has no alternate domain names, the list includes an origin domain name for the distribution.

**Group**  
The operating system or the operating system and version that CloudFront received requests from, depending on the value of `Grouping`. In addition to operating system names, possible values include the following:  
+ **Bot/Crawler** – primarily requests from search engines that are indexing your content.
+ **Empty** – requests for which the value of the `User-Agent` HTTP header was empty.
+ **Other** – operating systems that CloudFront identified but that aren't among the most popular. If `Bot/Crawler`, `Empty`, and/or `Unknown` don't appear among the first nine values, then they're also included in `Other`.
+ **Unknown** – requests for which the value of the `User-Agent` HTTP header was not associated with a standard browser. Most requests in this category come from custom applications or scripts.

**Requests**  
The number of requests that CloudFront received from each type of operating system.

**RequestsPct**  
The number of requests that CloudFront received from each type of operating system as a percentage of the total number of requests that CloudFront received during the time period.

### Operating system trends report
<a name="viewer-operating-system-trends-csv-data"></a>

The report includes the following values:

**DistributionID**  
The ID of the distribution that you ran the report for, or `ALL` if you ran the report for all distributions.

**FriendlyName**  
An alternate domain name (CNAME) for the distribution, if any. If a distribution has no alternate domain names, the list includes an origin domain name for the distribution.

**TimeBucket**  
The hour or the day that the data applies to, in Coordinated Universal Time (UTC).

**(Operating systems)**  
The remaining columns in the report list the operating systems or the operating systems and their versions, depending on the value of `Grouping`. In addition to operating system names, possible values include the following:  
+ **Bot/Crawler** – primarily requests from search engines that are indexing your content.
+ **Empty** – requests for which the value of the `User-Agent` HTTP header was empty.
+ **Other** – operating systems that CloudFront identified but that aren't among the most popular. If `Bot/Crawler`, `Empty`, and/or `Unknown` don't appear among the first nine values, then they're also included in `Other`.
+ **Unknown** – requests for which the operating system isn't specified in the `User-Agent` HTTP header.

### Locations report
<a name="viewer-locations-csv-data"></a>

The report includes the following values:

**DistributionID**  
The ID of the distribution that you ran the report for, or `ALL` if you ran the report for all distributions.

**FriendlyName**  
An alternate domain name (CNAME) for the distribution, if any. If a distribution has no alternate domain names, the list includes an origin domain name for the distribution.

**LocationCode**  
The abbreviation for the location that CloudFront received requests from. For more information about possible values, see the description of Location in [How data in the locations report is related to data in the CloudFront standard logs (access logs)](#viewers-reports-data).

**LocationName**  
The name of the location that CloudFront received requests from.

**Requests**  
The number of requests that CloudFront received from each location.

**RequestsPct**  
The number of requests that CloudFront received from each location as a percentage of the total number of requests that CloudFront received from all locations during the time period.

**TotalBytes**  
The number of bytes that CloudFront served to viewers in this country or state, for the specified distribution and period.

### Location trends report
<a name="viewer-location-trends-csv-data"></a>

The report includes the following values:

**DistributionID**  
The ID of the distribution that you ran the report for, or `ALL` if you ran the report for all distributions.

**FriendlyName**  
An alternate domain name (CNAME) for the distribution, if any. If a distribution has no alternate domain names, the list includes an origin domain name for the distribution.

**TimeBucket**  
The hour or the day that the data applies to, in Coordinated Universal Time (UTC).

**(Locations)**  
The remaining columns in the report list the locations that CloudFront received requests from. For more information about possible values, see the description of Location in [How data in the locations report is related to data in the CloudFront standard logs (access logs)](#viewers-reports-data).

## How data in the locations report is related to data in the CloudFront standard logs (access logs)
<a name="viewers-reports-data"></a>

The following list shows how data in the Locations report in the CloudFront console corresponds with values in CloudFront access logs. For more information about CloudFront access logs, see [Access logs (standard logs)](AccessLogs.md).

**Location**  
The country or U.S. state that the viewer is in. In access logs, the `c-ip` column contains the IP address of the device that the viewer is running on. We use geolocation data to identify the geographic location of the device based on the IP address.  
If you're displaying the **Locations** report by country, the country list is based on [ISO 3166-2, *Codes for the representation of names of countries and their subdivisions – Part 2: Country subdivision code*](https://en.wikipedia.org/wiki/ISO_3166-2). The country list includes the following additional values:  
+ **Anonymous Proxy** – The request originated from an anonymous proxy.
+ **Satellite Provider** – The request originated from a satellite provider that provides internet service to multiple countries. Viewers might be in countries with a high risk of fraud.
+ **Europe (Unknown)** – The request originated from an IP in a block that is used by multiple European countries. The country that the request originated from can't be determined. CloudFront uses **Europe (Unknown)** as the default. 
+ **Asia/Pacific (Unknown)** – The request originated from an IP in a block that is used by multiple countries in the Asia/Pacific region. The country that the request originated from can't be determined. CloudFront uses **Asia/Pacific (Unknown)** as the default. 
If you display the **Locations** report by U.S. state, note that the report can include U.S. territories and U.S. Armed Forces regions.  
If CloudFront can't determine a user's location, the location will appear as Unknown in viewer reports.

**Request Count**  
The total number of requests from the country or U.S. state that the viewer is in, for the specified distribution and period. This value generally corresponds closely with the number of `GET` requests from IP addresses in that country or state in CloudFront access logs. 

**Request %**  
One of the following, depending on the value that you selected for **Details**:  
+ **Countries** – The requests from this country as a percentage of the total number of requests. 
+ **U.S. States** – The requests from this state as a percentage of the total number of requests from the United States.
If requests came from more than 50 countries, then you can't calculate **Request %** based on the data in this table because the **Request Count** column doesn't include all of the requests during the specified period.

**Bytes**  
The number of bytes that CloudFront served to viewers in this country or state, for the specified distribution and period. To change the display of data in this column to KB, MB, or GB, choose the link in the column heading. 