株式会社アプリコットデザイン株式会社アプリコットデザイン

tel.0120-622-835

営業時間/10:00〜18:00 定休日/土日祝日

tel.0120-622835

営業時間/10:00〜18:00 定休日/土日祝日

  • instagram
  • facebook

BLOGスタッフブログ

トップページ > ブログ > GASを使ってアナリティクスのコンバージョンをスプレッドシートに取得したお話

GASを使ってアナリティクスのコンバージョンをスプレッドシートに取得したお話

UPDATE : 2022.04.12

CATEGORY :
Hirabayashi
Hirabayashi

Hirabayashi

こんにちは、かずです。

タイトルのまんまなのですが、アナリティクスからコンバージョンの数だけ取得したいときに、1件だけならいいですが、複数件あると色んなところをクリックしてページを読み込んで・・・とても時間がかかります!

備忘録かねてますのでざっくりですがご了承ください!
早速ですが、コードがこちら

function getGoogleAnalytics() {
const spreadSheet = SpreadsheetApp.getActiveSpreadsheet();
const sheet = spreadSheet.getSheetByName('sheet1');
const start = '2022-03-01'
const end = '2022-03-31'
const metrics = "ga:goalCompletionsAll";
const viewId = 'ビューのID';
const gaData = Analytics.Data.Ga.get(
'ga:' + viewId,
start,
end,
metrics,
).getRows();
sheet.getRange(1, 3, gaData.length, gaData[0].length).setValues(gaData);
}
GASの設定でAnalytics APIを有効化しないと動きませんので忘れずに。

6行目のmetricsは取得したデータになります。
コンバージョン以外にも色々データが取得出来るのでレポート作成なんかにも便利です!
下記で色々試せます!


次の行のviewIDはアカウントでもプロパティでもなくビューのIDです!
取得したい数が多い場合、スプレッドシートにひたすらIDを記述してforで回してもいいですね!

function getGoogleAnalytics() {
const spreadSheet = SpreadsheetApp.getActiveSpreadsheet();
const sheet = spreadSheet.getSheetByName('sheet1');
const lastRow = sheet.getLastRow();
const start = '2022-03-01'
const end = '2022-03-31'
const metrics = "ga:goalCompletionsAll";

for(let i = 2; i <= lastRow; i++){
const viewId = sheet.getRange(i, 2).getValue();
const gaData = Analytics.Data.Ga.get(
'ga:' + viewId,
start,
end,
metrics,
).getRows();
sheet.getRange(i, 3, gaData.length, gaData[0].length).setValues(gaData);
}
}
getRange()でIDを記述したセルを取得しています。
文字ばかりでわかりにくかったらごめんなさい!

ではでは。

この記事を書いた人Who wrote this blog

Hirabayashi Kazuaki

猫をこよなく愛するコーダー

RELATED POST関連する記事

CONTACTお問い合わせ

tel.0120-622835

営業時間/10:00〜18:00 
定休日/土日祝日

  • 信州ファームデザイン
  • 信州ファームマーケット
  • 株式会社POCKET
  • 株式会社Think for Design