woocommerce / google-listings-and-ads

Sync your store with Google to list products for free, run paid ads, and track performance straight from your store dashboard.
https://woo.com/products/google-listings-and-ads/
GNU General Public License v3.0
45 stars 21 forks source link

Campaign Creation: Add confirmation modal when user skips without creating a campaign #2504

Open joemcgill opened 1 month ago

joemcgill commented 1 month ago

Part of https://github.com/woocommerce/google-listings-and-ads/issues/2459

Today when merchants decide to skip campaign creation, they finish onboarding and get the following success modal.

image

And if they click Next, they see the following modal.

image

We propose that users that click on skip campaign creation get shown an "Are you sure" (AYS) modal with a message saying that campaigns is highly recommended to drive sales and asking "are you sure you want to skip this?" If they click yes, we finish onboarding and we show the same modals as we do today. If they click no, they should stay in campaign creation to finish the task.

Example Modal:

image

Modal content:

Skip setting up ads?

Enabling Performance Max is highly recommended to drive more sales and reach new audiences across Google channels like Search, YouTube and Discover.

Performance Max uses the best of Google’s AI to show the most impactful ads for your products at the right time and place. Google will use your product data to create ads for this campaign.

Learn more about Performance Max.

[Cancel] [Complete setup without setting up ads]

Acceptance Criteria

Implementation Brief

A new AppModal component will need to be added to the js/src/setup-mc/setup-stepper/setup-paid-ads/setup-paid-ads.js step. The createSkipButton() function will need to be updated so that the onClick callback triggers opening the modal rather than finishing the onboarding step.

The new modal will need to have two action buttons, the "No" button that closes the modal and the "Yes" button that closes the modal and calls the finishOnboardingSetup() function. This button will also need to include data-action={ ACTION_SKIP } so the correct event is recorded when the onboarding is completed.

Test Coverage

joemcgill commented 3 weeks ago

@fblascogarma, @MatthiasReinholz, and @michaeleleder for this issue, I think we can use the AppModal component that is already used throughout the plugin (see the screenshot in the description above).

We'll just need to confirm the title, content and button text we want to use. Here's an initial proposal for consideration:

===

Skip setting up ads?

Enabling Performance Max is highly recommended to drive more sales and reach new audiences across Google Ads channels like Search, YouTube and Discover.

Performance Max uses the best of Google’s AI to show the most impactful ads for your products at the right time and place. Google will use your product data to create ads for this campaign.

Learn more about Performance Max.

[Cancel] [Complete setup]

fblascogarma commented 3 weeks ago

I like it @joemcgill ! I would take out the "Ads" part. So instead of "across Google Ads channels like Search, YouTube and Discover", it would be: "across all Google channels like Search, YouTube and Discover."

What do you think @MatthiasReinholz and @michaeleleder ?

fblascogarma commented 3 weeks ago

We reviewed with @MatthiasReinholz and @michaeleleder and looks good to us with that "Ads" removal change. Thanks!

joemcgill commented 3 weeks ago

Perfect. Thanks for confirming!

joemcgill commented 2 weeks ago

@ankitguptaindia this is ready for QA.

ankitguptaindia commented 2 weeks ago

Hello @joemcgill I have tested the PR, and it is functioning as described in the task details. However, I would like to propose a couple of enhancements to improve the user experience, when the merchant completes the onboarding without setting up a campaign.

cc: @asvinb

Current Behavior:

When "Complete setup" is selected from the modal, the onboarding is completed without a campaign, and the current behavior continues.

Screenshot 2024-08-30 at 5 23 33 PM

Suggestion 1: Improve Button Text

Current Button Text: Complete setup

Proposed Button Text: Complete setup without setting up ads

Screenshot 2024-08-30 at 5 27 46 PM

In its current state, the button label Complete setup might not convey the full implications of the action. If a merchant is skimming through the process or accidentally clicks the button, they might complete the onboarding without realizing they haven’t set up any ads. Updating the button text to Complete setup without setting up ads provides a clearer indication of what will happen, reducing the risk of accidental completion.


Suggestion 2: Add a Confirmation Checkbox

Proposal: Introduce a checkbox with a confirmation message, such as “I understand that I am completing the setup without setting up ads.” The Complete setup button would only become active once the checkbox is checked.

Button State before confrimation Button State after confrimation
Screenshot 2024-08-30 at 5 30 13 PM Screenshot 2024-08-30 at 5 31 05 PM

Adding a confirmation checkbox will require the merchant to actively acknowledge that they are completing the setup without setting up ads. This approach is similar to the "Disconnect all accounts" screen and can help ensure that merchants are fully aware of their actions before proceeding. It also reduces the likelihood of accidental onboarding completion.

Benefits of This Approach:

joemcgill commented 1 week ago

Thanks for these suggestions, @ankitguptaindia!

I agree that the button text could be more clear. Let's update it per your suggestion. Personally, I think the additional check-box is probably unnecessary. The whole AYS modal acts as a confirmation that someone wants to complete the setup without setting up Ads. By the time they see this modal they have already clicked a "Skip Ads" button and are given the choice to either "Cancel" (go back to set up Ads) or "Complete setup without setting up ads". A third confirmation seems pretty heavy handed.

joemcgill commented 1 week ago

@eason9487 this one is ready for your review.

eclarke1 commented 4 days ago

Engineering complete and approved, moving to UAT for @fblascogarma final approval

eclarke1 commented 3 days ago

Just tagging @joemcgill and @kt-12 to advise this needs to be merged please