Connect with us


Automate Multi-Site Reporting With Google Sheets And GSC API



Illustration of a modern workspace setup with a desktop showing Google Sheets, a mobile device with documents, a calculator, and a target with arrows on a yellow background.

Working in SEO leads to interesting challenges that I’m sure you’ve all faced at one point.

You’re a master of flexibility and managing tedious tasks. I’ve recently found myself dealing with 100+ top-tier sites.

Working with global companies, it’s quite the puzzle to:

  • Wrangle data for 100+ sites.
  • Keep tabs on every site’s performance.

And, since some of these sites compete against each other on the first page of Google, it’s quite possible that Site 1’s traffic drops but Site 2 captures the loss.

Checking one site’s Google Search Console (GSC) is easy, but it’s intense with hundreds of sites at a global scale.

What Can You Do?

I devised a Google Sheets Apps Script that connects to GSC’s API to transform global reporting from an arduous task that can take days – or weeks – into one that takes a few minutes.

After creating the script, I can easily put in a date range and pull each site’s:

  • Clicks and impressions.
  • Keywords.
  • Average rankings.
  • Etc.

Since we manage hundreds of sites, it’s not uncommon for users to end up on one of our sites to make their purchase, as mentioned above.

In the grand scheme of things, the bigger picture is more important than an individual site’s performance.

What I’m going to show you is my 10-step process to create a script that pulls clicks and impressions and then compares it all year over year (YoY).

10-Step Process To Create A Google Sheets Apps Script For Reporting On Hundreds Of Sites

Step 1: Creating Your Google Sheets

Screenshot from author, April 2024

Your first step is to create your original Google Sheets file. You can do this by following these steps:

  • Go to Google Drive.
  • Navigate to the folder where you want to place the files.
  • Right-click on the background
  • Select > Google Sheets > Blank Spreadsheet.

You’ll want to rename the file. I called mine “Global Search Console Reporting.”

step 1 name google sheets fileScreenshot from author, April 2024

Your file is now set up, and you’re ready for the next step.

Step 2: Setting Up Your Google Sheet

A blank sheet isn’t useful and won’t make sense to users until you add some headers in Row 1. Headers that I recommend adding, in this order and bolding, are:

  • Website.
  • Niche.
  • Clicks.
  • Impressions.
  • YoY Clicks.
  • YoY Impressions.
  • Clicks % Difference.
  • Impressions % Difference.

Your file should now look something like this:

step 2 add column headersScreenshot from author, April 2024

Your next step is to create a Google Cloud Project, which is also fairly simple and straightforward.

Step 3: Create A Google Cloud Console Data Project

Creating your project should be free because Google provides a $300 credit to try out its platform. If you haven’t used Google Cloud, you can find it at

You can now follow these steps:

  • Tap Select Project > New Project.
  • Enter Project Name (example: “My GSC Data Project”).
  • Tap Create.
step 3 google console projectScreenshot from author, April 2024
  • Click Select Project.
  • Select your Project.

step 3 select project

  • Click the top Search bar.
  • Type “Google Search Console API.
  • Select “Google Search Console API.”
  • Click Enable.

step 3 search console api

Step 4: Create Apps Scripts In Google Sheets

In this step, we will work on integrating the Apps Script into the Google Sheet that you created previously. You’ll need to open the Sheet and follow these steps:

  • Tap Extensions > Apps Script.

step 4 create apps script

I’m not going to go into the details on how the script works, but you can copy this code:

function onOpen() {
  var ui = SpreadsheetApp.getUi();
  // Or DocumentApp or FormApp.
  ui.createMenu('Search Console')
    .addItem('Fetch Data', 'menuItem1')

function menuItem1() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  var lastRow = sheet.getLastRow(); // Find the last row with data in column A

  // Clear cells C2:F151 before processing data

  for (var i = 2; i <= lastRow; i++) { var siteProperty = sheet.getRange(i, 1).getValue(); var startDateValue = sheet.getRange('M1').getValue(); var endDateValue = sheet.getRange('M2').getValue(); var timeZone = SpreadsheetApp.getActiveSpreadsheet().getSpreadsheetTimeZone(); var format = "yyyy-MM-dd"; // Calculate dates for last year var lastYearStartDate = new Date(startDateValue); lastYearStartDate.setFullYear(lastYearStartDate.getFullYear() - 1); var lastYearEndDate = new Date(endDateValue); lastYearEndDate.setFullYear(lastYearEndDate.getFullYear() - 1); var startDate = Utilities.formatDate(lastYearStartDate, timeZone, format); var endDate = Utilities.formatDate(lastYearEndDate, timeZone, format); // Fetch data for the previous year var previousYearResponse = requestSearchConsoleAPI(siteProperty, startDate, endDate); // Fetch data for the current year (unchanged) startDate = Utilities.formatDate(new Date(startDateValue), timeZone, format); endDate = Utilities.formatDate(new Date(endDateValue), timeZone, format); var currentYearResponse = requestSearchConsoleAPI(siteProperty, startDate, endDate); // Process and write data for both years processAndWriteData(sheet, i, previousYearResponse, currentYearResponse); } } function processAndWriteData(sheet, row, previousYearResponse, currentYearResponse) { // Check if response is not defined or null and has at least one row if (previousYearResponse && previousYearResponse.length > 0) {
    var previousYearClicks = 0;
    var previousYearImpressions = 0;

    previousYearResponse.forEach(function(row) {
      previousYearClicks += row.clicks;
      previousYearImpressions += row.impressions;

    sheet.getRange(row, 5).setValue(previousYearClicks); // Write to column D (index 5)
    sheet.getRange(row, 6).setValue(previousYearImpressions); // Write to column E (index 6)
  } else {
    Logger.log('No data found for previous year in row: ' + row);

// Process and write data for the current year
  if (currentYearResponse && currentYearResponse.length > 0) {
    var currentYearClicks = 0;
    var currentYearImpressions = 0;

    currentYearResponse.forEach(function(row) {
      currentYearClicks += row.clicks;
      currentYearImpressions += row.impressions;

    sheet.getRange(row, 3).setValue(currentYearClicks); // Write to column C (index 3)
    sheet.getRange(row, 4).setValue(currentYearImpressions); // Write to column D (index 4)
  } else {
    Logger.log('No data found for current year in row: ' + row);

function requestSearchConsoleAPI(siteProperty, startDate, endDate) {

  try {
    const oauthToken = ScriptApp.getOAuthToken(); // Correctly call the method
    const siteUrl = siteProperty;
    const url="" + encodeURIComponent(siteUrl) + '/searchAnalytics/query';
    const payload = {
      startDate: startDate,
      endDate: endDate,
      type: 'web'

    const headers = {
      'Authorization': 'Bearer ' + oauthToken,
      'Content-Type': 'application/json'
    const options = {
      'method': 'post',
      'contentType': 'application/json', // Consistent content type
      'headers': headers,
      'payload': JSON.stringify(payload),
      'muteHttpExceptions': true

    const response = UrlFetchApp.fetch(url, options);
    const responseCode = response.getResponseCode();
    const contentText = response.getContentText(); // Get response text for logging

  Logger.log('Response Code: ${responseCode}'); // Use backticks
  Logger.log('Response Content: ${contentText}'); // Use backticks

  if (responseCode === 200) {
    const json = JSON.parse(contentText);
    Logger.log(json); // This will log the actual JSON response
    return json.rows; // Adjust this line based on the actual structure of your API response
  } else {
    // Correctly use backticks here for template literals
    const errorMessage="Error fetching data: ${responseCode} - ${contentText}";
    throw new Error(errorMessage);

  } catch (e) {
    Logger.log('Error: ${e.toString()}');
    return null;

And then go back to your Apps Script project and do the following:

  • Press CTRL + A to select all.
  • Press CTRL + V to paste in the code you copied.
  • Tap OK.
  • Click Save project.
  • Tap Run.

*Note: If you are receiving a Bad Request error from Google with too many redirects, this is because you have multiple accounts logged in. Try in a browser with only one Google account logged in.

step 4 save run apps scriptScreenshot from author, April 2024

You’ll be requested to Review permissions and will need to select the Google Account associated with your Google Search Console.

Google will give you a warning because the app isn’t verified, so simply tap on the “Advanced” setting and then “Go to Untitled project (unsafe).”

step 4 unsafe appScreenshot from author, April 2024

Finally, you can complete this step by tapping or clicking on the Allow button.

Step 5: Set Up The Access Credentials

I know there’s a lot of back-and-forth going on between Sheets and Google Cloud Console, but it’s an unfortunate necessity at this point. Now, we will be setting up Access Credentials, which will require you to go back to the Google Cloud Console.

Note: You must have enabled the Google Search Console API from the previous step.

Your screen should look something like this:

step-5 oauth concent screenScreenshot from author, April 2024

You’ll need to:

  • Tap Credentials > Create Credentials.
  • Tap OAuth client ID > Configure Consent Screen.

step 5 create credentials oauth

  • Click External.
  • Tap Create.
  • Enter “My GSC Data” as the App name.
  • Add your Support email (your email used for GSC).
  • Add your Developer contact information (the email you used for GSC).
  • Tap Save and continue.
  • Check 2 of the Google Search Console API scopes (might be on page 2).

step 5 add gsc api scope

  • Click Update.
  • Click Save and Continue.
  • Now click Add Users.

step 5 add users

  • You can add multiple users, preferably those that have access to GSC.
  • Save and Continue.

Step 6: Set Up Google Cloud Project For GSC Data

While we’re still on the Google Cloud Project, you’ll want to click the hamburger icon and go to Cloud overview > Dashboard:

step 6 cloud dashboardScreenshot from author, April 2024

You’ll notice that it says “Project number,” which you should select and Copy by pressing CTRL + C.

Switch back to your Apps Script tab and tap Project Settings:

step 6 app settingsScreenshot from author, April 2024

Go to the section titled Google Cloud Platform (GCP) Project, paste the project number (CTRL +  V) into the text box, and click Set project.

Step 7: Rename Your Google Apps Script

You’ll now want to rename your Apps Script by going to Project History like this:

step 7 project name

You’ll then:

  • Click Untitled project at the top of the screen.
  • Enter “My GSC Data Project Script.”
  • Click on Rename.

Step 8: Edit Google Apps Manifest File For Script

You’re still staying inside of your script, and we’re going to go back to Project Settings just as we did before.

This time, you’ll want to click Show “appsscript.json” manifest file in editor to make sure there’s a checkmark next to it.

Next, click on Editor and navigate to the appsscript.json, which you can see below:

step 8 edit appscript jsonScreenshot from author, April 2024

You’ll want to delete everything in the appsscript.json file and paste in the following script:

  "timeZone": "America/New_York",
  "dependencies": {
  "exceptionLogging": "STACKDRIVER",
  "oauthScopes": [

Once you’ve added the code, you can click on your file and tap Save, and then Run. You’ll be prompted to review permissions, and you’ll need to select your appropriate account to continue using.

After a few prompts, you’ll be asked to allow your app “My GSC Data,” and execution will begin.

Step 9: Adjust The Dates For Website Data Analysis

In the Google Sheets file, you’ll want to add the following under:

  • L1: Start Date.
  • L2: End Date.

Note: The start and end dates should be specified in M1 and M2. For example, you can input:

Note: The date format may differ based on your system settings and location.

Step 10: Set Conditional Formatting For Non-Empty Cells Less Than Zero

Everything is set up, but you should add some conditional formatting to make it look better. We’re going to focus on the “Clicks % Difference” and “Impressions % Difference” columns:

step 10 clicks impressionsScreenshot from author, April 2024

Select the rows under the headers “Clicks % Difference” and “Impressions % Difference” and click on Format > Conditional formatting. Under Format rules, you’ll want to select Less than.

In the “Value or formula” text area, you can add 0.

What this does is that if it’s less than 0, we’ll be changing the color to red since it’s in the negative and traffic has been lost. You can do this by clicking on the paint can and changing it to red before clicking done.

If you want to change a positive increase in traffic to green, you’ll add another rule for Greater than and add the 0 value.

Here are the formulas to use in G2 and H2 (you can replicate them for each row; just click and drag down for the other rows):

=IFERROR(IF(AND(C2<>"",E2<>""), (C2-E2)/E2, ""),"")
=IFERROR(IF(AND(D2<>"",F2<>""), (D2-F2)/F2, ""),"")

Now, you have an easy way to run reports on multiple sites at once.

That’s It, You Have Your Global Report

In column A, input your Google Search Console properties; if it is a domain property, add it as or a URL property as

To run or refresh the report, use the special menu Search Console > Fetch Data:

final step run

*Note: This script supports about 150 domains, but if you need more, you can adjust the row #14 in your AppScripts file:


Using this very tutorial, you’ll have an easy time turning days of gathering data and running reports into a few minutes. You can even expand the scripts to perform other calculations or gather more data for your report.

Check out my other tutorial on Integrating ChatGPT With Google Sheets.

Automating your reports is a great way to streamline tedious tasks, and I hope it makes your job a little easier.

More resources: 

Featured Image: 200dgr /Shutterstock

Source link

Keep an eye on what we are doing
Be the first to get latest updates and exclusive content straight to your email inbox.
We promise not to spam you. You can unsubscribe at any time.
Invalid email address


Google Clarifies Organization Merchant Returns Structured Data




Google updates organization structured data for merchant returns

Google quietly updated their organization structured data documentation in order to clarify two points about merchant returns in response to feedback about an ambiguity in the previous version.

Organization Structured Data and Merchant Returns

Google recently expanded their Organization structured data so that it could now accommodate a merchant return policy. The change added support for adding a sitewide merchant return policy.

The original reason for adding this support:

“Adding support for Organization-level return policies

What: Added documentation on how to specify a general return policy for an Organization as a whole.

Why: This makes it easier to define and maintain general return policies for an entire site.”

However that change left unanswered about what will happen if a site has a sitewide return policy but also has a different policy for individual products.

The clarification applies for the specific scenario of when a site uses both a sitewide return policy in their structured data and another one for specific products.

What Takes Precedence?

What happens if a merchant uses both a sitewide and product return structured data? Google’s new documentation states that Google will ignore the sitewide product return policy in favor of a more granular product-level policy in the structured data.

The clarification states:

“If you choose to provide both organization-level and product-level return policy markup, Google defaults to the product-level return policy markup.”

Change Reflected Elsewhere

Google also updated the documentation to reflect the scenario of the use of two levels of merchant return policies in another section that discusses whether structured data or merchant feed data takes precedence. There is no change to the policy, merchant center data still takes precedence.

This is the old documentation:

“If you choose to use both markup and settings in Merchant Center, Google will only use the information provided in Merchant Center for any products submitted in your Merchant Center product feeds, including automated feeds.”

This is the same section but updated with additional wording:

“If you choose to use both markup (whether at the organization-level or product-level, or both) and settings in Merchant Center, Google will only use the information provided in Merchant Center for any products submitted in your Merchant Center product feeds, including automated feeds.”

Read the newly updated Organization structured data documentation:

Organization (Organization) structured data – MerchantReturnPolicy

Featured Image by Shutterstock/sutlafk

Source link

Keep an eye on what we are doing
Be the first to get latest updates and exclusive content straight to your email inbox.
We promise not to spam you. You can unsubscribe at any time.
Invalid email address
Continue Reading


What Is It & How To Write It




What Is It & How To Write It

In this guide, you will learn about alternative text (known as alt text): what it is, why it is important for on-page SEO, how to use it correctly, and more.

It’s often overlooked, but every image on your website should have alt text. More information is better, and translating visual information into text is important for search engine bots attempting to understand your website and users with screen readers.

Alt text is one more source of information that relates ideas and content together on your website.

This practical and to-the-point guide contains tips and advice you can immediately use to improve your website’s image SEO and accessibility.

What Is Alt Text?

Alternative text (or alt text) – also known as the alt attribute or the alt tag (which is not technically correct because it is not a tag) – is simply a piece of text that describes the image in the HTML code.

What Are The Uses Of Alt Text?

The original function of alt text was simply to describe an image that could not be loaded.

Many years ago, when the internet was much slower, alt text would help you know the content of an image that was too heavy to be loaded in your browser.

Today, images rarely fail to load – but if they do, then it is the alt text you will see in place of an image.

Screenshot from Search Engine Journal, May 2024

Alt text also helps search engine bots understand the image’s content and context.

More importantly, alt text is critical for accessibility and for people using screen readers:

  • Alt text helps people with disabilities (for example, using screen readers) learn about the image’s content.

Of course, like every element of SEO, it is often misused or, in some cases, even abused.

Let’s now take a closer look at why alt text is important.

Why Alt Text Is Important

The web and websites are a very visual experience. It is hard to find a website without images or graphic elements.

That’s why alt text is very important.

Alt text helps translate the image’s content into words, thus making the image accessible to a wider audience, including people with disabilities and search engine bots that are not clever enough yet to fully understand every image, its context, and its meaning.

Why Alt Text Is Important For SEO

Alt text is an important element of on-page SEO optimization.

Proper alt text optimization makes your website stand a better chance of ranking in Google image searches.

Yes, alt text is a ranking factor for Google image search.

Depending on your website’s niche and specificity, Google image search traffic may play a huge role in your website’s overall success.

For example, in the case of ecommerce websites, users very often start their search for products with a Google image search instead of typing the product name into the standard Google search.

Screenshot from search for [Garmin forerunner]Screenshot from search for [Garmin forerunner], May 2024

Google and other search engines may display fewer product images (or not display them at all) if you fail to take care of their alt text optimization.

Without proper image optimization, you may lose a lot of potential traffic and customers.

Why Alt Text Is Important For Accessibility

Visibility in Google image search is very important, but there is an even more important consideration: Accessibility.

Fortunately, in recent years, more focus has been placed on accessibility (i.e., making the web accessible to everyone, including people with disabilities and/or using screen readers).

Suppose the alt text of your images actually describes their content instead of, for example, stuffing keywords. In that case, you are helping people who cannot see this image better understand it and the content of the entire web page.

Let’s say one of your web pages is an SEO audit guide that contains screenshots from various crawling tools.

Would it not be better to describe the content of each screenshot instead of placing the same alt text of “SEO audit” into every image?

Let’s take a look at a few examples.

Alt Text Examples

Finding many good and bad examples of alt text is not difficult. Let me show you a few, sticking to the above example with an SEO audit guide.

Good Alt Text Examples

So, our example SEO guide contains screenshots from tools such as Google Search Console and Screaming Frog.

Some good examples of alt text may include:


Tip: It is also a good idea to take care of the name of your file. Using descriptive file names is not a ranking factor, but I recommend this as a good SEO practice.

Bad And/Or Spammy Alt Text Examples

I’ve also seen many examples of bad alt text use, including keyword stuffing or spamming.

Here is how you can turn the above good examples into bad examples:

”google search console coverage report

As you can see, the above examples do not provide any information on what these images actually show.

You can also find examples and even more image SEO tips on Google Search Central.

Common Alt Text Mistakes

Stuffing keywords in the alt text is not the only mistake you can make.

Here are a few examples of common alt text mistakes:

  • Failure to use the alt text or using empty alt text.
  • Using the same alt text for different images.
  • Using very general alt text that does not actually describe the image. For example, using the alt text of “dog” on the photo of a dog instead of describing the dog in more detail, its color, what it is doing, what breed it is, etc.
  • Automatically using the name of the file as the alt text – which may lead to very unfriendly alt text, such as “googlesearchconsole,” “google-search-console,” or “photo2323,” depending on the name of the file.

Alt Text Writing Tips

And finally, here are the tips on how to write correct alt text so that it actually fulfills its purpose:

  • Do not stuff keywords into the alt text. Doing so will not help your web page rank for these keywords.
  • Describe the image in detail, but still keep it relatively short. Avoid adding multiple sentences to the alt text.
  • Use your target keywords, but in a natural way, as part of the image’s description. If your target keyword does not fit into the image’s description, don’t use it.
  • Don’t use text on images. All text should be added in the form of HTML code.
  • Don’t write, “this is an image of.” Google and users know that this is an image. Just describe its content.
  • Make sure you can visualize the image’s content by just reading its alt text. That is the best exercise to make sure your alt text is OK.

How To Troubleshoot Image Alt Text

Now you know all the best practices and common mistakes of alt text. But how do you check what’s in the alt text of the images of a website?

You can analyze the alt text in the following ways:

Inspecting an element (right-click and select Inspect when hovering over an image) is a good way to check if a given image has alt text.

However, if you want to check that in bulk, I recommend one of the below two methods.

Install Web Developer Chrome extension.

Screenshot of Web Developer Extension in Chrome by authorScreenshot from Web Developer Extension, Chrome by author, May 2024

Next, open the page whose images you want to audit.

Click on Web Developer and navigate to Images > Display Alt Attributes. This way, you can see the content of the alt text of all images on a given web page.

The alt text of images is shown on the page.Screenshot from Web Developer Extension, Chrome by author, May 2024

How To Find And Fix Missing Alt Text

To check the alt text of the images of the entire website, use a crawler like Screaming Frog or Sitebulb.

Crawl the site, navigate to the image report, and review the alt text of all website images, as shown in the video guide below.

You can also export only images that have missing alt text and start fixing those issues.

Alt Text May Not Seem Like A Priority, But It’s Important

Every source of information about your content has value. Whether it’s for vision-impaired users or bots, alt text helps contextualize the images on your website.

While it’s only a ranking factor for image search, everything you do to help search engines understand your website can potentially help deliver more accurate results. Demonstrating a commitment to accessibility is also a critical component of modern digital marketing.


What is the purpose of alt text in HTML?

Alternative text, or alt text, serves two main purposes in HTML. Its primary function is to provide a textual description of an image if it cannot be displayed. This text can help users understand the image content when technical issues prevent it from loading or if they use a screen reader due to visual impairments. Additionally, alt text aids search engine bots in understanding the image’s subject matter, which is critical for SEO, as indexing images correctly can enhance a website’s visibility in search results.

Can alt text improve website accessibility?

Yes, alt text is vital for website accessibility. It translates visual information into descriptive text that can be read by screen readers used by users with visual impairments. By accurately describing images, alt text ensures that all users, regardless of disability, can understand the content of a web page, making the web more inclusive and accessible to everyone.

More resources: 

Featured Image: BestForBest/Shutterstock

Source link

Keep an eye on what we are doing
Be the first to get latest updates and exclusive content straight to your email inbox.
We promise not to spam you. You can unsubscribe at any time.
Invalid email address
Continue Reading


Google Dials Back AI Overviews In Search Results, Study Finds




Photo of a mobile device in mans hand with generative google AI Overview on the screen.

According to new research, Google’s AI-generated overviews have undergone significant adjustments since the initial rollout.

The study from SE Ranking analyzed 100,000 keywords and found Google has greatly reduced the frequency of AI overviews.

However, when they appear, they’re more detailed than they were previously.

The study digs into which topics and industries are more likely to get an AI overview. It also looks at how the AI snippets interact with other search features like featured snippets and ads.

Here’s an overview of the findings and what they mean for your SEO efforts.

Declining Frequency Of AI Overviews

In contrast to pre-rollout figures, 8% of the examined searches now trigger an AI Overview.

This represents a 52% drop compared to January levels.

Yevheniia Khromova, the study’s author, believes this means Google is taking a more measured approach, stating:

“The sharp decrease in AI Overview presence likely reflects Google’s efforts to boost the accuracy and trustworthiness of AI-generated answers.”

Longer AI Overviews

Although the frequency of AI overviews has decreased, the ones that do appear provide more detailed information.

The average length of the text has grown by nearly 25% to around 4,342 characters.

In another notable change, AI overviews now link to fewer sources on average – usually just four links after expanding the snippet.

However, 84% still include at least one domain from that query’s top 10 organic search results.

Niche Dynamics & Ranking Factors

The chances of getting an AI overview vary across different industries.

Searches related to relationships, food and beverages, and technology were most likely to trigger AI overviews.

Sensitive areas like healthcare, legal, and news had a low rate of showing AI summaries, less than 1%.

Longer search queries with ten words were more likely to generate an AI overview, with a 19% rate indicating that AI summaries are more useful for complex information needs.

Search terms with lower search volumes and lower cost-per-click were more likely to display AI summaries.

Other Characteristics Of AI Overviews

The research reveals that 45% of AI overviews appear alongside featured snippets, often sourced from the exact domains.

Around 87% of AI overviews now coexist with ads, compared to 73% previously, a statistic that could increase competition for advertising space.

What Does This Mean?

SE Ranking’s research on AI overviews has several implications:

  1. Reduced Risk Of Traffic Losses: Fewer searches trigger AI Overviews that directly answer queries, making organic listings less likely to be demoted or receive less traffic.
  2. Most Impacted Niches: AI overviews appear more in relationships, food, and technology niches. Publishers in these sectors should pay closer attention to Google’s AI overview strategy.
  3. Long-form & In-Depth Content Essential: As AI snippets become longer, companies may need to create more comprehensive content beyond what the overviews cover.

Looking Ahead

While the number of AI overviews has decreased recently, we can’t assume this trend will continue.

AI overviews will undoubtedly continue to transform over time.

It’s crucial to monitor developments closely, try different methods of dealing with them, and adjust game plans as needed.

Featured Image: DIA TV/Shutterstock

Source link

Keep an eye on what we are doing
Be the first to get latest updates and exclusive content straight to your email inbox.
We promise not to spam you. You can unsubscribe at any time.
Invalid email address
Continue Reading