DOŁĄCZ DO GRUPY
BEZPŁATNY AUDYT
SKRYPT PMAX
NEWSLETTER

Zaawansowane Google Ads

5,001 członków

Dołącz do naszej społeczności ekspertów Google Ads i zyskaj dostęp do zaawansowanych strategii, wsparcia specjalistów i inspirujących case studies.

Prywatna grupa - Tylko zatwierdzeni członkowie

Nie jesteś pewny, czy Twoje reklamy działają tak, jak powinny?

Umów się na bezpłatny audyt konta Google Ads

Profesjonalna analiza

Szybki kontakt i konkretne informacje zwrotne.

Analiza efektywności
Weryfikacja Strategii
Praktyczne rekomendacje
Propozycja współpracy

Chcesz lepiej zrozumieć działanie kampanii Performance Max?

PMax Channels Analyzer

Darmowy skrypt dla Google Ads

Analizuj wydatki i konwersje z poszczególnych kanałów w kampaniach Performance Max.

Podział na kanały
Szczegółowe statystyki
Łatwa instalacja
Automatyczne raporty

Zapisz się na newsletter i otrzymuj praktyczne porady oraz narzędzia, które usprawnią twoje konto reklamowe.

Skrypt Google Ads: Everything Else Checker

Kampanie zakupowe to często najefektywniejsza forma promocji w Google Ads.
Dzięki nim można zarządzać reklamami dla dziesiątek tysięcy produktów.

Niestety dużym wyzwaniem może okazać się monitorowanie, czy nowe produkty dodano do asortymentu naszego sklepu (i tym samym pojawiły się w pliku produktów).

Jeśli tak się stanie, to automatycznie każde ID produktu zostaje dodane do sekcji „Pozostałe w grupie”. To z kolei powoduje ustawienie domyślnej stawki CPC oraz utrudnia zarządzanie kontem.

Poniższy skrypt Google Ads sprawdza, czy mamy kampanie, w których sekcja „Pozostałe w grupie” rejestruje wyświetlenia.

Jeśli tak, to dostaniemy e-mail z nazwą tej kampanii i grupy reklam.

Oczywiście po otrzymaniu takiej wiadomości dobrą praktyką będzie ręczne wydzielenie nowych produktów i ustawienie stawki za kliknięcie.

Harmonogram: raz dziennie
Konfiguracja: wstaw swój email do zmiennej EMAIL.


Po więcej na temat Skryptów zapraszam na grupę FB o automatyzacji:
https://www.facebook.com/groups/skrypty.google.ads


/*
Copyright 2019 Krzysztof Bycina www.LiveAds.pl

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

//Configuration
var ACCEPTABLE_NUMBER_OF_IMPRESSIONS  = 0; // The script looks for "Everything else" product group that receives more impressions than this number
var EMAIL = 'ENTER YOUR EMAIL HERE';
//End of the configuration

var badProductGroups = [];

function main() {
    validateEmail(EMAIL);
    findBadProductGroups();
    sendEmails();
}

function findBadProductGroups() {
    var productGroups = AdWordsApp.productGroups()
        .withCondition("Impressions > 0")
        .forDateRange("LAST_7_DAYS")
        .get();

    while (productGroups.hasNext()) {
        var oneGroup = productGroups.next();

        //Check if it is the everything else section?
        if (oneGroup.isOtherCase()) {
            var stats = oneGroup.getStatsFor("LAST_7_DAYS")
            var impressions = stats.getImpressions();

            //Did it get enough impressions to trigger the alert?
            if (impressions > ACCEPTABLE_NUMBER_OF_IMPRESSIONS) {
                var campaign = oneGroup.getCampaign();
                var adGroup = oneGroup.getAdGroup();

                //Log the info about the everything else section that requires attention
                Logger.log("Campaign: " + campaign.getName() + " ---> " + "Ad group: " + adGroup.getName() + " received: " + impressions + " impressions in the Everything Else section.");

                //Add the info about the everything else section that requires attention to the arrey
                badProductGroups.push("Campaign: " + campaign.getName() + " ---> " + "Ad group: " + adGroup.getName() + " received: " + impressions + " impressions in the Everything Else section.");
            }
        }
    }
}

function validateEmail(email) {
    var key = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;

    if (key.test(email) === false) {
        throw new Error('You must eneter a valid email address to run the script!')
    }
}

function sendEmails() {
    if (badProductGroups[0]) {
        MailApp.sendEmail(EMAIL, AdWordsApp.currentAccount().getName() + ': you can split out your Everything Else product groups.', 'Hi, \n\nPlease, see the list of Ad Groups that require your attention: \n\n' + badProductGroups.join("\n"));
    }
}

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *