google / site-kit-wp

Site Kit is a one-stop solution for WordPress users to use everything Google has to offer to make them successful on the web.
https://sitekit.withgoogle.com
Apache License 2.0
1.25k stars 291 forks source link

Improve UX for AdSense setup incomplete module message in Settings #5693

Closed mxbclang closed 10 months ago

mxbclang commented 2 years ago

Feature Description

As discussed in our August 15 meeting, currently, when a user sets up AdSense in Site Kit but there is still an issue on the AdSense side that is keeping ads from displaying, the following message displays in Site Kit > Settings > Connected Services:

image

Clicking "continue module setup" takes the user to a screen that, as part of the AdSense Setup Improvements work, includes details on why AdSense isn't fully set up yet. , this also includes a

This is confusing to many users as it seems to indicate to them that they did not "complete" the module setup on the Site Kit side and the AdSense code was not placed successfully. However, they have completed setup; they just need to take care of issues on the AdSense side.

Some possible changes to consider:

cc @jamesozzie @adamdunnage @marrrmarrr @felixarntz


Do not alter or remove anything below. The following sections will be managed by moderators only.

Acceptance criteria

Implementation Brief

Test Coverage

QA Brief

Changelog entry

marrrmarrr commented 2 years ago

@bethanylang @jamesozzie @adamdunnage do these "issues" on the AdSense side mean the person should just wait (e.g. their account is in review), or do they actually need to do something? I think the copy here should reflect if an action is required or not.

adamdunnage commented 2 years ago

@marrrmarrr That entirely depends on what state the account and site is in. For example you could have a scenario where the site/account requires attention from the user. In this case if you click on the continue module setup for AdSense in the Settings section then you will be prompted to review your AdSense account and are linked out to it. See an example of this here:

https://user-images.githubusercontent.com/91896826/187923969-0a844f26-ce72-49f0-b21e-822daf955e57.mp4

Another scenario is if the user has completed everything they can for the setup of AdSense but the site/account are getting ready which can take anywhere up to 2 weeks as we state. In this case the users still see the "AdSense is not connected" message on the module in the settings section of Site Kit and have the continue module setup link which just takes them to the "Your site/account is getting ready page". This is confusing because they have completed everything and have the review site in AdSense button which takes them to their account with no actions required but the module is not yet connected in Site Kit. Here is an example of this state:

https://user-images.githubusercontent.com/91896826/187924931-ccf9880f-930d-46cb-b954-a680f4ba5aa8.mp4

We do get quite a lot of instances in the support forum of users being confused by this when their site is taking a number of days to get ready and on the account side everything looks good but yet their module isn't connected with the option to continue the module setup.

jamesozzie commented 2 years ago

@marrrmarrr Adding to the above, from the AdSense platform, I believe some users were previously stuck in a situation whereby they have used Site Kit to insert their AdSense code, but the AdSense platform was not recognizing this placement if their site was not yet approved. I was not able to recreate this today, from various attempts.

The below is now the experience from the AdSense platform, without a snippet check from what I can see:

image

Assuming that there is no longer a check for a valid snippet from the AdSense platform, I don't see any issues. There could be the following improvements:

  1. A link to the Site Kit plugin website, within the "if you use Site Kit" text.
  2. A link to documentation for the "Make sure you've let Site Kit put code on your site" text.
aaemnnosttv commented 2 years ago

@marrrmarrr the ACs are a bit out of date here I think as we've already changed the status text for unconnected modules to be a CTA button. You can see it here as it is for Analytics and GA4, but the same would apply for any other active but unconnected module:

image

https://google.github.io/site-kit-wp/storybook/develop/iframe.html?id=settings--connected-services&args=&viewMode=story

mxbclang commented 2 years ago

@marrrmarrr @aaemnnosttv Circling back on this one, as it continues to be a major source of support topics. Is it possible to get this prioritized for an upcoming release?

FlicHollis commented 2 years ago

@aaemnnosttv and @marrrmarrr following on from Bethany's comments above, if we can agree on the AC update then we can prioritise this and add to Sprint 88. cc @bethanylang and @nfmohit

marrrmarrr commented 2 years ago

@aaemnnosttv my understanding of the "Connect Google Analytics 4" chip that we added to the Settings page is that it is for modules which are completely unconnected (i.e. setup hasn't started at all). Whereas for this case for AdSense, the setup has been started, but there is an extra action required. Since based on Bethany and James's comments it seems the main confusion comes exactly from this, I think a good solution here would be to surface the exact state with the wording already in the ACs ("action required").

jamesozzie commented 2 years ago

Adding to this that I've been testing this today, and I can see room for improvement.

Improvement one: A text change when a site hasn't yet been reviewed / approved

At present if an AdSense user uses Site Kit to add a new site to AdSense or adds a previously rejected site, the status within the Site Kit settings page will always display a "Your site is getting ready" or "You need to fix some things before we can connect Site Kit to your AdSense account" message respectively. The second isn't really accurate, as their site is pending an AdSense review. Their site may be approved without any changes. I have a recording of this scenario here.

image

A relatively straightforward improvement here, is to change the text as per the below:

-   You need to fix some things before we can connect Site Kit to your AdSense account.
+   Your site has not yet been approved for ads by the AdSense team.

Improvement Two: A text change on the CTA button when viewing your AdSense connection status

There is also a possible improvement for the status that appears when viewing the connected services tab, before a user edits their AdSense settings. This isn't as straightforward, as it would require a check each time the "Connected services" screen is accessed. One solution here is to change the wording, so users don't see a "Complete setup" CTA and end up in a loop. An improvement can be viewed in the image below:

image

Improvement Three: Modifying the AdSense link if a user revisits their AdSense settings

Finally, a third improvement which would help a lot of users would be to improve the "Review AdSense Account" CTA on the settings screen where a users site is not yet reviewed.

At present it links to the AdSense homepage: https://accounts.google.com/accountchooser?continue=https%3A%2F%2Fwww.google.com%2Fadsense%2Fnew%2Fu%2F0%2Fpub-*******%3Fsource%3Dsite-kit&Email=***email***

It would ideally direct users to the "Sites" page, so they can easily view their site status: https://www.google.com/adsense/new/u/2/pub-*******/sites/my-sites


It's also very easy to see why users are confused with the set up process. I have the steps to recreate, along with additional comments highlighting issues:

  1. Set SK on a new site with your Google account (which already has an AdSense account)
  2. Connect the AdSense module
  3. You'll be asked to "Add this site to your AdSense account"
  4. You're then directed to the AdSense platform when you can continue to add the site. It's not clear at this point if the site is in review, but users would likely click on the "Request review button"
  5. Users then might revisit their Site Kit settings to check the AdSense status, and the status shows that they need to fix some things. This isn't the case, their site is in review.
  6. Users then may open a support topic or reach out in the AdSense Help Center.
  7. Users also may click on the "Review AdSense Account" button where they're directed to the AdSense homepage, which doesn't show their AdSense site status

@bethanylang I've summarized a few different issues which are very common above. I'm not sure if these can/should also be addressed within this GitHub issue, or if they require further consideration and discussion. We'll need to know the next steps in order to proceed.

FlicHollis commented 2 years ago

Thanks so much @jamesozzie, I am assigning back to @marrrmarrr for review.

mxbclang commented 2 years ago

@marrrmarrr Adam, James, and I discussed this a bit further in our support sync today and we identified another area for improvement here – outlining it below, but let me know if it would be better on its own. cc @FlicHollis

This goes back to the same overarching issue that @jamesozzie flagged, where the kind of "pending" state of the AdSense setup in Site Kit can be confusing to users. In this case, none of the settings for AdSense display in Site Kit > Settings > Connected Services > AdSense until the "Setup incomplete" message has been resolved, usually by their site being approved.

This is challenging because the easiest way for users to confirm that SK has placed their AdSense code snippet – a major issue that we see confusion about on the forums – is to go Site Kit > Settings > Connected Services > AdSense and see "AdSense Code: The AdSense code has been placed on your site":

image

However, this does not display in the Settings until the site has been approved, even though the user selects if they want SK to place their code as part of the initial setup process before they have approval.

Ideally, it would be great if that message (and the Let Site Kit place AdSense code on your site toggle when you click Edit) would display from the moment that the AdSense module is first connected, regardless of your site's approval status or other issues. This would allow users to easily verify that their code has been inserted and that that is not an issue blocking next steps for displaying ads.

Let me know if you have any questions!

felixarntz commented 2 years ago

@jamesozzie For the situation on "Improvement one" from https://github.com/google/site-kit-wp/issues/5693#issuecomment-1295162491, what are the AdSense account status and AdSense site status values in Site Health?

One thing I notice in that scenario is that the screenshots are technically somewhat mismatched: The Site Kit message refers to the AdSense account requiring some fixes, whereas the AdSense frontend screenshot is for the site being reviewed. I'm curious what the AdSense frontend would display on the account level in this scenario. Nonetheless, there is a potential flaw in Site Kit's logic right now around when that message is shown. Could you please share the concrete AdSense account status value from the situation so that I can assess whether the displayed UI is expected or not then?

jamesozzie commented 2 years ago

@felixarntz In the example I had for Improvement one this was on a site which was likely disapproved on AdSense before. I may have then removed it from the list of my sites in my AdSense account. This is possibly the reason the site was appearing in SK initially as not having being added, before then ending up in a "You need to fix some things" state, while in AdSense it appeared as "Not reviewed".

I tested this more with other scenarios today. The outcome I feel is that the there are no mismatching status' between SK and AdSense.

In all cases tested the proposed UX improvements still apply. See below different scenarios tested today:

A new site being added to an approved AdSense account for the first time

The behavior and status throughout the SK setup flow is correct and as expected (recording of set up flow).

A site previously not approved as it requires attention (needs-attention status) being added before confirming any issues previously resulting in the site not approved were addressed)

The behavior and status throughout the SK setup flow is correct and as expected. If a user doesn't confirm they addressed any action areas identified by AdSense the status doesn't change to getting-ready when checking my SH info and the status on AdSense directly remains as needs-attention (recording of set up flow).

A site previously not approved as it requires attention (needs-attention status) being added after confirming any issues previously resulting in the site not approved were addressed)

The behavior and status throughout the SK setup flow is correct and as expected. If a user does confirm they addressed any action areas identified by AdSense, the status changes to Getting ready in the AdSense platform immediately, and this is reflected if then going into SK and connecting AdSense. (recording of set up flow).

A site previously not approved as it requires attention (needs-attention status) being removed from my list of AdSense sites before confirming I addressed any action items

I did encounter a mismatching of AdSense status here, with the SH info tab showing as needs-review although this eventually changed to getting-ready after I refresh the SH status for a second time (not evident in the recording). The behavior and status throughout the SK setup flow is correct and as expected. (recording of experience)

FlicHollis commented 2 years ago

Hi @felixarntz please could you review @jamesozzie comment when you get a second? For now I will remove this from Sprint 88 whilst we clarify ACs and IBs, but as soon as this is ready we can prioritise and add to a sprint. cc @bethanylang

eclarke1 commented 2 years ago

Just a suggestion but it may be worth jumping on a call here to hash this out, screenshare and to cut out some back and forth 😃

mxbclang commented 1 year ago

@felixarntz Circling back on this one – maybe worth having a call for all of us, as Em suggests?

mxbclang commented 1 year ago

@felixarntz Checking in again here, thanks!

jamesozzie commented 10 months ago

Closing this as we've created the following individual issues based on suggestions within thread: