Skip to content

Instantly share code, notes, and snippets.

Avatar

Frederick Vallaeys siliconvallaeys

View GitHub Profile
@siliconvallaeys
siliconvallaeys / Percentage of unidentified search terms in Google Ads account
Last active Sep 15, 2020
Get a report about the percentage of a Google Ads account that has no data about the search terms responsible for impressions, clicks, or cost
View Percentage of unidentified search terms in Google Ads account
/***************************************************
* Undefined Search Terms Report
* @version 1.1
* @author: Naman Jindal (Optmyzr)
****************************************************/
var LAST_N_DAYS = 30; // Number of previous days to include in report
var EMAILS = ['example@example.com']; // Array of Emails to be notified and given access to the results in a Google Sheet
var PRIMARY_METRIC = 'Cost'; // E.g. Impressions, Cost, Clicks
@siliconvallaeys
siliconvallaeys / Geo Anomaly Detector for Google Ads
Last active May 4, 2020
Get an alert when performance in a particular location deviates from normal
View Geo Anomaly Detector for Google Ads
/******************************************
* Geo Anomalies Report
* @version: 1.0
* @author: Naman Jindal and https://www.optmyzr.com
********************************************/
// ------------- USER DEFINED SETTINGS ---------------
var LAST_N_WEEKS = 8; // The number of weeks used to calculate the typical performance for the specific day of the week
var EMAILS = ['example@example.com']; // Array of emails (comma separated list)
@siliconvallaeys
siliconvallaeys / PPC Data with Covid-19 measures
Created Apr 9, 2020
Plot PPC data with local COVID-19 measures
View PPC Data with Covid-19 measures
/******************************************
* Ad Performance With Covid Timeline
* @version: 1.0
* @author: Naman Jindal (Optmyzr)
* Event data courtsey epidemicforecasting.org used under the MIT license
********************************************/
// Select One Metric to plot on Chart from below
// 'Impressions','Clicks','Conversions','Cost','ConversionValue','Ctr','ConversionRate','AverageCpc'
View Add a label with the campaign name to every campaign
// This simple script can be used in conjunction with Optmyzr's
// budget management scripts.
// uncomment either line 14 or 15 depending on whether you want to ADD or REMOVE the label
function main() {
var campaignIterator = AdsApp.campaigns().get();
Logger.log('Total campaigns found : ' +
campaignIterator.totalNumEntities());
while (campaignIterator.hasNext()) {
@siliconvallaeys
siliconvallaeys / ETA vs RSA Query Report
Last active Sep 1, 2020
Compare performance of RSAs vs ETAs at the query level in an ad group to help decide which ad format is driving the best results
View ETA vs RSA Query Report
/******************************************
* ETA vs RSA Test
* @version: 1.0
* @author: Naman Jindal (Optmyzr)
* March 2, 2020
*******************************************/
var LOOKBACK_DAYS = 30; // Number of Days to look back for stats
var EMAILS = ['example@example.com']; // Array of Emails separated by comma
var CAMPAIGN_NAME_CONTAINS = ''; // Case Insensitive
@siliconvallaeys
siliconvallaeys / Google Ads Experiment Dashboard (MCC multi-account)
Last active Aug 3, 2020
Create a Google Ads Experiments dashboard for multiple accounts in an MCC
View Google Ads Experiment Dashboard (MCC multi-account)
// Create a dashboard of Google Ads experiments in a Google spreadsheet
// -- MCC version
//
// Free AdWords Script courtesy of
// Optmyzr.com
// PPC tools, reports and scripts for Google, Bing, Facebook, and Amazon
//
// September 2019
@siliconvallaeys
siliconvallaeys / Google Ads Experiment Dashboard (single account)
Last active Feb 3, 2020
Get a dashboard of all the experiments in a single Google Ads account
View Google Ads Experiment Dashboard (single account)
// Create a dashboard of Google Ads experiments in a Google spreadsheet
// -- Single account version
//
// Free AdWords Script courtesy of
// Optmyzr.com
// PPC tools, reports and scripts for Google, Bing, Facebook, and Amazon
//
// September 2019
/* instructions
@siliconvallaeys
siliconvallaeys / Ad Component Report with Segments
Created Feb 13, 2019
Ad component report for Google Ads with segment data
View Ad Component Report with Segments
// Create a report in a Google spreadsheet with performance data by ad component
// Metrics for each unique headline, description, path, and visible URL are aggregated
// Use this data to find the best ad components for use in new ads or responsive search ads
// Free AdWords Script courtesy of Optmyzr.com - try Optmyzr for more PPC tools and scripts
// February 2019
function main() {
var currentSetting = {};
currentSetting.spreadsheetUrl = "NEW";
currentSetting.time = "20180101,20190201"; //"LAST_30_DAYS", "LAST_MONTH", "20180101,20181231"
@siliconvallaeys
siliconvallaeys / Ad Text N-Grams
Last active Apr 29, 2020
Get an n-gram analysis of Google Ads ad texts
View Ad Text N-Grams
/**
*
* Ad Text N-Gram Mining Tool
*
* Get aggregated metrics for when the same word sequence is used in ads across your account.
* Discover better performing phrases from all your Google Ads.
*
* Based on a script by Daniel Gilbert and BrainLabsDigital.com (https://searchengineland.com/brainlabs-script-find-best-worst-search-queries-using-n-grams-228379)
*
* Adapted by Fred Vallaeys and Optmyzr.com to work with expanded ad text rather than search terms data
@siliconvallaeys
siliconvallaeys / Ad Component Report
Last active Apr 24, 2019
Aggregated metrics for the various ad text elements used in an account
View Ad Component Report
// Create a report in a Google spreadsheet with performance data by ad component
// Metrics for each unique headline, description, path, and visible URL are aggregated
// Use this data to find the best ad components for use in new ads or responsive search ads
// Free AdWords Script courtesy of Optmyzr.com - try Optmyzr for more PPC tools and scripts
// January 2019
function main() {
var currentSetting = {};
currentSetting.spreadsheetUrl = "NEW";
currentSetting.time = "LAST_30_DAYS";
You can’t perform that action at this time.