1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

GA4アカウント、プロパティ作成~カスタムディメンション設定をGoogleシートで一括作成

Last updated at Posted at 2025-01-29

GA4の設定はとてもわかりにくい

GA4のアカウントやプロパティを作成する際、毎回GA4の管理画面にアクセスして1つ1つ設定するのは面倒ではないでしょうか?
そこで今回はGA4のアカウントやプロパティ作成、ユーザー登録、カスタムディメンションやキーイベントの登録まで基本的な設定をGoogleシートで行えるようにしてみました。

今回は実際にGoogleシートを使って作成する方法を紹介します。

Googleシートをコピー

まずは、Googleシート Create GA4 properties - templateをご自身のGoogleドライブにコピーします。
image.png

コピーしたGoogleシートを開き、メニューに「GA4」が表示され、その下には「アカウント」、「プロパティ」などが表示されることを確認します。
image.png

メニューが表示されない場合

メニューが表示されない場合はGoogle Apps Scriptを編集する必要があります。

  1. 拡張機能>Apps Scriptを選択して、Apps Scriptを開く
    image.png

  2. サービスに「AnalyticsAdmin」があることを確認
    image.png
    追加されていない場合は、手動で追加します。サービスの右側の+ボタンをクリックして、「Google Analytics Admin API」を選択します。バージョンは「v1alpha」、名前はそのまま「AnalyticsAdmin」として追加します。
    image.png

  3. ライブラリに「CreateGA4Properties」があることを確認  
    追加されていない場合は、手動で追加します。ライブラリの右側の+ボタンをクリックして、
    スクリプトIDに「1Ix1XZBnCaCLlTr6NITpptAtkWJga8WBWzsjXRcdx6WAYjVGLcWnqfcVf」を入力して検索します。すると、結果が表示されますので、バージョンは最新のものを選択し、名前はそのまま「CreateGA4Properties」として追加します。
    image.png

  4. 関数を追加
    メニューを表示させるための関数を追加します。以下のコードを貼り付けます。

/*!
* Copyright © 2025 pep4.net
* This software is licensed under the MIT License.
* For more information, see the LICENSE file.
*/
function onOpen() {
  onMenu();
}

function onMenu() {
  const ui = SpreadsheetApp.getUi();
  const locale = Session.getActiveUserLocale(); // ユーザーのロケールを取得
  const isJapanese = locale.startsWith('ja'); // ロケールが日本語かどうかを判定

  // メニューの作成
  const menu = ui.createMenu(isJapanese ? 'GA4 メニュー' : 'GA4 Menu'); // メニューの名前を切り替え
  Logger.log("Locale:" + locale +"\t" +isJapanese);
  // メニュー項目を追加
  if (isJapanese) {
    // サブメニュー1: アカウント関連
    const accountMenu = ui.createMenu('アカウント関連')
      .addItem('アカウントを作成', 'CreateGA4properties.runCreateAccounts')
      .addItem('すべてのアカウントを取得', 'updateAccountsSheet');

    // サブメニュー2: プロパティ関連
    const propertyMenu = ui.createMenu('プロパティ関連')
      .addItem('プロパティを作成', 'CreateGA4properties.runCreateProperties')
      .addItem('データストリームを作成', 'CreateGA4properties.runCreateDataStreams')
      .addItem('ユーザーを追加 & 権限を変更', 'CreateGA4properties.runCreateUsers')
      .addItem('キーイベントを追加', 'CreateGA4properties.runCreateKeyEvents')
      .addItem('カスタムディメンションを追加', 'CreateGA4properties.runCreateCustomDimensions')
      .addItem('カスタム指標を追加', 'CreateGA4properties.runCreateCustomMetrics');

    // サブメニュー3: 設定関連
    const settingsMenu = ui.createMenu('設定更新')
      .addItem('データ保持を更新', 'CreateGA4properties.runUpdateDataRetentionSettings')
      .addItem('アトリビューション設定を更新', 'CreateGA4properties.runUpdateAttributionSettings')
      .addItem('Google シグナルを更新', 'CreateGA4properties.runUpdateGoogleSignalsSettings');

    // メインメニューにサブメニューを追加
    ui.createMenu('GA4') // メインメニュー名
      .addSubMenu(accountMenu) // サブメニュー1を追加
      .addSubMenu(propertyMenu) // サブメニュー2を追加
      .addSubMenu(settingsMenu) // サブメニュー3を追加
      .addToUi(); // UI に追加
  } else {
    // サブメニュー1: アカウント関連
    const accountMenu = ui.createMenu('Account')
      .addItem('Create account', 'CreateGA4properties.runCreateAccounts')
      .addItem('Get All accounts', 'updateAccountsSheet');

    // サブメニュー2: プロパティ関連
    const propertyMenu = ui.createMenu('Property')

      .addItem('Create property', 'CreateGA4properties.runCreateProperties')
      .addItem('Create datastream', 'CreateGA4properties.runCreateDataStreams')
      .addItem('Add users & Change roles', 'CreateGA4properties.runCreateUsers')
      .addItem('Add key events', 'CreateGA4properties.runCreateKeyEvents')
      .addItem('Add custom dimensions', 'CreateGA4properties.runCreateCustomDimensions')
      .addItem('Add custom metrics', 'CreateGA4properties.runCreateCustomMetrics');

    // サブメニュー3: 設定関連
    const settingsMenu = ui.createMenu('Update')
      .addItem('Update data retention', 'CreateGA4properties.runUpdateDataRetentionSettings')
      .addItem('Update attribution setting', 'CreateGA4properties.runUpdateAttributionSettings')
      .addItem('Update Google signals', 'CreateGA4properties.runUpdateGoogleSignalsSettings');

    // メインメニューにサブメニューを追加
    ui.createMenu('GA4') // メインメニュー名
      .addSubMenu(accountMenu) // サブメニュー1を追加
      .addSubMenu(propertyMenu) // サブメニュー2を追加
      .addSubMenu(settingsMenu) // サブメニュー3を追加
      .addToUi(); // UI に追加    
  }
}

image.png

以上で設定は完了です。Apps Scriptを保存して先ほどコピーしたGoogleシートを再読み込みします。メニューに「GA4」が表示されればOKです。

GA4アカウントの作成

  1. accountシートのB列、C列に記入していきます。どちらも必須です。

    • B列:アカウント名
    • C列:地域(一覧から選択)
      複数アカウント作成したい場合は下の画像のように複数行入力します。
      image.png
  2. メニューから「GA4」>「アカウント関連」>「アカウントを作成」を選択します。
    image.png
    実行すると下記のようなポップアップが表示されますが、無視してください。もし途中でやめたい場合は「Cancel」を押してください。ただし、すぐに終わらないので処理が進んでしまう可能性があります。
    image.png
    実行中にGoogleアカウントへのアクセス承認のポップアップが出た場合は、「OK」をクリックして承認を進めます。
    image.png
    GA4アカウントを作成するときにアクセスしたいGoogleアカウントを選択します。
    image.png
    警告ウィンドウが表示される場合は、「Advanced」を選択し、さらに下に表示される「Go to Create GA4 properties - template 」をクリックして先に進みます。※ここの名前は変更される場合がありますが気にしないで進みます。
    image.png
    image.png

  3. ポップアップにURLが表示されますので、そのURLをコピーして別のブラウザ(タブ)でそのページに進みます。なお、複数のGoogleアカウントですでにブラウザにログインしている場合は、該当するGoogleアカウントに合わせてURL内のauthuser=0の数字を1、2と変更して今回使用するGoogleアカウントに変更してください。
    image.png
    すると下記のようなページが表示されますので内容に同意して進みます。
    ※これを行わないとアカウントは作成されません。
    image.png

  4. このあと、ブラウザは無効なページにリダイレクトされますが、無視します。Googleシートに戻り、OKボタンを押します。
    すると、下記のようにアカウント作成が完了したポップアップが表示され、GoogleシートにもアカウントIDが記入されます。
    image.png

GA4プロパティの作成

propertyシートに記入します。アカウントはaccountシートに記載されているものから選べます。もしaccountシートにないアカウントに対してプロパティを作成したい場合は、accountシートに手動でアカウントIDを入力します。
その他、プロパティ名などすべての項目を入力・選択します。データの保持(G列)以降はわからない場合はそのままで構いません。
複数のプロパティを作成したい場合は、下の行に続けて記載します。
image.png
入力が完了したら先ほどのアカウントと同様にメニューから「GA4」>「プロパティ関連」>「プロパティ作成」を選択します。
image.png
成功するとポップアップが表示され、「property」シートのA列にプロパティIDが挿入されます。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?