The [competitive visibility
report](https://support.google.com/merchants/answer/11366442) helps you understand
your competitive landscape on a product category level, and take action to
improve your visibility based on displayed impressions from your Shopping
ads and organic listings. For information on specific products and brands,
see the [best sellers
reports](https://developers.google.com/merchant/api/guides/reports/understand-the-market#identify_best-sellers).

Your account must meet minimum eligibility requirements, and you must ensure
that your use, or any third party's use, of Competitive visibility data
complies with the [Merchant Center terms and
conditions](https://support.google.com/merchants/answer/12628444).

See which reporting [tables and
fields](https://developers.google.com/merchant/api/reference/rest/reports_v1/accounts.reports/search)
are available with the Merchant API.

## Competitive visibility data

Competitive visibility data is grouped by country, [Google product
category](https://support.google.com/merchants/answer/6324436) and traffic source.

You must specify country and category values in a `WHERE` clause for all
competitive visibility queries. You can change the values in the `WHERE`
clause to customize the report for dates, traffic sources, countries, and
categories.

Queries with multiple country and category values might take longer to
execute, or time out.

## View businesses with similar visibility

You can query `competitive_visibility_competitor_view` to view businesses
with a similar number of impressions to your business.

Here's a sample. To make the request, pass the following
[Merchant Center Query Language](https://developers.google.com/merchant/api/guides/reports/query-language)
statement to the
[`accounts.reports.search`](https://developers.google.com/merchant/api/reference/rest/reports_v1/accounts.reports/search)
method:

    SELECT
      report_country_code,
      report_category_id,
      traffic_source,
      domain,
      is_your_domain,
      rank,
      ads_organic_ratio,
      page_overlap_rate,
      higher_position_rate,
      relative_visibility
    FROM competitive_visibility_competitor_view
    WHERE date BETWEEN '2023-06-02' AND '2023-06-27'
      AND report_country_code = 'US'
      AND report_category_id = 536
      AND traffic_source = 'ADS'
    ORDER BY rank

You can change the values in the `WHERE` clause to customize the report for
other dates, traffic sources, countries, and
[categories](https://support.google.com/merchants/answer/6324436).

Here's a sample response from the preceding query:

    {
      "results": [
        {
          "competitiveVisibilityCompetitorView": {
            "reportCountryCode": "US",
            "reportCategoryId": "536",
            "trafficSource": "ADS",
            "domain": "examplepetstore.com",
            "isYourDomain": false,
            "rank": "4",
            "adsOrganicRatio": 8,
            "pageOverlapRate": 0.19,
            "higherPositionRate": 0.46,
            "relativeVisibility": 0.5
          }
        },
        {
          "competitiveVisibilityCompetitorView": {
            "reportCountryCode": "US",
            "reportCategoryId": "536",
            "trafficSource": "ADS",
            "domain": "example.com",
            "isYourDomain": true,
            "rank": "5",
            "adsOrganicRatio": 30,
            "pageOverlapRate": 1,
            "higherPositionRate": 0,
            "relativeVisibility": 0
          }
        },
      ]
    }

For more information about the fields available for query, see the
[Fields in `competitiveVisibilityCompetitorView` table](https://developers.google.com/merchant/api/reference/rest/reports_v1/accounts.reports#CompetitiveVisibilityCompetitorView.FIELDS).

## View businesses with highest visibility

You can query `competitive_visibility_top_merchant_view` to see which
businesses are getting the most impressions across Google in a specific
category, and how your business compares.

Here's a sample. To make the request, pass the following
[Merchant Center Query Language](https://developers.google.com/merchant/api/guides/reports/query-language)
statement to the
[`accounts.reports.search`](https://developers.google.com/merchant/api/reference/rest/reports_v1/accounts.reports/search)
method:

    SELECT
      report_country_code,
      report_category_id,
      traffic_source,
      domain,
      is_your_domain,
      rank,
      ads_organic_ratio,
      page_overlap_rate,
      higher_position_rate
    FROM competitive_visibility_top_merchant_view
    WHERE date BETWEEN '2022-08-01' AND '2022-09-01'
      AND report_country_code = 'US'
      AND report_category_id = 100
      AND traffic_source = 'ORGANIC'
    ORDER BY rank

Here's a sample response from the preceding query:

    {
      "results": [
        {
          "competitiveVisibilityTopMerchantView": {
            "reportCountryCode": "US",
            "reportCategoryId": "100",
            "trafficSource": "ORGANIC",
            "domain": "examplepetstore.com",
            "isYourDomain": false,
            "rank": "1",
            "adsOrganicRatio": 0.2,
            "pageOverlapRate": 0.3,
            "higherPositionRate": 0.45
          }
        },
        {
          "competitiveVisibilityTopMerchantView": {
            "reportCountryCode": "US",
            "reportCategoryId": "100",
            "trafficSource": "ORGANIC",
            "domain": "example.com",
            "isYourDomain": false,
            "rank": "2",
            "adsOrganicRatio": 5,
            "pageOverlapRate": 0.67,
            "higherPositionRate": 0.89
          }
        },
      ]
    }

For more information about the fields available for query, see the
[Fields in `competitiveVisibilityTopMerchantView` table](https://developers.google.com/merchant/api/reference/rest/reports_v1/accounts.reports#CompetitiveVisibilityTopMerchantView.FIELDS).

## Compare your visibility to the category benchmark

You can query `competitive_visibility_benchmark_view` to see how your number
of impressions trends over time compared to the average trend of other
sellers.

Here's a sample. To make the request, pass the following
[Merchant Center Query Language](https://developers.google.com/merchant/api/guides/reports/query-language)
statement to the
[`accounts.reports.search`](https://developers.google.com/merchant/api/reference/rest/reports_v1/accounts.reports/search)
method:

    SELECT
      report_country_code,
      report_category_id,
      traffic_source,
      date,
      your_domain_visibility_trend,
      category_benchmark_visibility_trend
    FROM competitive_visibility_benchmark_view
    WHERE date BETWEEN '2022-09-01' AND '2022-09-07'
      AND report_country_code = 'US'
      AND report_category_id = 100
      AND traffic_source = 'ORGANIC'
    ORDER BY date

Here's a sample response from the preceding query:

    {
      "results": [
        {
          "competitiveVisibilityBenchmarkView": {
            "date": {
              "year": 2022,
              "month": 9,
              "day": 1
            },
            "reportCountryCode": "US",
            "reportCategoryId": "100",
            "trafficSource": "ORGANIC",
            "yourDomainVisibilityTrend": 0,
            "categoryBenchmarkVisibilityTrend": 0
          }
        },
        {
          "competitiveVisibilityBenchmarkView": {
            "date": {
              "year": 2022,
              "month": 9,
              "day": 2
            },
            "reportCountryCode": "US",
            "reportCategoryId": "100",
            "trafficSource": "ORGANIC",
            "yourDomainVisibilityTrend": 0.3,
            "categoryBenchmarkVisibilityTrend": -0.15
          }
        },
      ]
    }

For more information about the fields available for query, see the
[Fields in `competitiveVisibilityBenchmarkView` table](https://developers.google.com/merchant/api/reference/rest/reports_v1/accounts.reports#CompetitiveVisibilityBenchmarkView.FIELDS).