Skip to content

Instantly share code, notes, and snippets.

Avatar

Frederick Vallaeys siliconvallaeys

View GitHub Profile
@siliconvallaeys
siliconvallaeys / BMM and Phrase Match Change Analysis - MCC version
Last active Feb 17, 2021
Find out how much your account may be impacted by Google's match type changes in Feb 2021 - MCC version
View BMM and Phrase Match Change Analysis - MCC version
/*************************************************
* Analysis of the impact of Phrase Match and Broad Match Modified merging in Google Ads in 2021
* @author Naman Jindal <nj.itprof@gmail.com>
* For Optmyzr.com - Award Winning PPC Management Suite - Try it free for 2 weeks at www.optmyzr.com
* @version 1.0
***************************************************/
// Make your own copy of this spreadsheet
// then add the URL to the line below: https://swiy.io/phrase-bmm-template-spreadsheet
var URL = 'ENTER YOUR GOOGLE SPREADSHEET URL HERE';
@siliconvallaeys
siliconvallaeys / Phrase and BMM Analysis
Last active May 25, 2021
Get an analysis related to the impact of Google Ads merging phrase match and broad match modified keywords in 2021
View Phrase and BMM Analysis
/*************************************************
* Analysis of the impact of Phrase Match and Broad Match Modified merging in Google Ads in 2021
* @author Naman Jindal <nj.itprof@gmail.com>
* For Optmyzr.com - Award Winning PPC Management Suite - Try it free for 2 weeks at www.optmyzr.com
* @version 1.0
***************************************************/
// Make your own copy of this spreadsheet
// then add the URL to the line below: https://swiy.io/phrase-bmm-template-spreadsheet
var URL = 'ENTER YOUR GOOGLE SPREADSHEET URL HERE';
@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"