Skip to content

Instantly share code, notes, and snippets.

View chipoglesby's full-sized avatar
🏠
Working from home

Chip Oglesby chipoglesby

🏠
Working from home
View GitHub Profile
@chipoglesby
chipoglesby / datalayer.js
Last active August 29, 2015 13:57
Google Tag Manager Data Layer
<script>
datalayer = [];
</script>
@chipoglesby
chipoglesby / example.py
Last active August 29, 2015 14:04
Python Examples
def donuts(count):
if count >= 10:
return 'Number of donuts: many'
else:
return 'Number of donuts: %s' % count
def donuts(count):
text1 = 'Number of donuts: '
if count<10:
text = text1 + str(count)
@chipoglesby
chipoglesby / random
Created September 3, 2014 00:04
Assign a random Custom Dimension Group
function makeid()
{
var text = "";
var possible = "AB";
for( var i=0; i < 1; i++ )
text += possible.charAt(Math.floor(Math.random() * possible.length));
return text;
}
@chipoglesby
chipoglesby / filters.py
Last active August 29, 2015 14:19
Traverse through accounts and return filters for each account
import argparse
import sys
from apiclient.errors import HttpError
from apiclient import sample_tools
from oauth2client.client import AccessTokenRefreshError
def main(argv):
analytics, flags = sample_tools.init(
@chipoglesby
chipoglesby / ad_id.R
Created April 27, 2015 15:48
ad_id in R
ad_id <- data %>% group_by(CustomerID, Campaign, Adgroup, AdID) %>% summarize(
AverageCpc=round(sum(Cost) / sum(Clicks),2),
Clicks=sum(Clicks),
Impressions=sum(Impressions),
CTR=round(sum(Clicks) / sum(Impressions),2),
Cost=round(sum(Cost),2),
Conversions=sum(Conversions),
CPA=round(sum(Cost) / sum(Conversions),2),
ConversionRate=round(sum(Conversions) / sum(Clicks), 2))
ad_id[ad_id==Inf] <- 0
@chipoglesby
chipoglesby / cost.js
Last active August 29, 2015 14:20
Cost Checker - This MCC script will log the Client's Name and Cost
var dateRange = "THIS_MONTH";
function main() {
MccApp.accounts().withCondition("Cost > 1.00").forDateRange(dateRange).withLimit(50).executeInParallel('runOnEachAccount');
}
function runOnEachAccount() {
var stats = AdWordsApp.currentAccount().getStatsFor(dateRange);
var impressions = stats.getImpressions();
var clicks = stats.getClicks();
var cost = stats.getCost();
@chipoglesby
chipoglesby / Youtube.js
Last active August 29, 2015 14:20
Youtube Metrics via the Adwords API
var SPREADSHEET_URL = "YOUR URL HERE";
 
function main() {
  //These names are important. change them with caution
  var tabs = ['ABC123', 'ABC123 LM'];
  for(var i in tabs) {
    var results = runQuery(tabs[i]);
    writeToSpreadsheet(tabs[i],results);
  }
}
@chipoglesby
chipoglesby / mcc_cost.js
Created May 8, 2015 14:59
Google Adwords MCC script will run on the MCC level and log cost for given date range
var dateRange = "THIS_MONTH";
function main() {
MccApp.accounts().withCondition("Cost > 1.00").forDateRange(dateRange).withLimit(50).executeInParallel('runOnEachAccount');
}
function runOnEachAccount() {
var stats = AdWordsApp.currentAccount().getStatsFor(dateRange);
var impressions = stats.getImpressions();
var clicks = stats.getClicks();
var cost = stats.getCost();
@chipoglesby
chipoglesby / Translate.js
Last active August 29, 2015 14:21
Translating Google Spreadsheet cells using Google Translate
function onEdit(e) {
var sheet = SpreadsheetApp.getActiveSheet();
var name = sheet.getName();
var cell = sheet.getActiveCell();
var value = cell.getValue();
if (typeof value == 'string') {
var spanish = LanguageApp.translate(value, 'en', 'es');
cell.setValue(spanish);
}
}
@chipoglesby
chipoglesby / mccspend.js
Last active August 29, 2015 14:22
An Adwords MCC script that pulls accounts from a spreadsheet and then writes the account spend for the month on another sheet.
var dateRange = "THIS_MONTH";
var SPREADSHEET_URL = "url";
var accounts = [];
var values = [];
function main() {
var ss = SpreadsheetApp.openByUrl(SPREADSHEET_URL);
var clear = ss.getSheetByName('Adwords').getRange("A2:C").clear();
var sheet = ss.getSheetByName('Accounts');
var name = sheet.getName();