코드의 Firebase 구성 객체에 measurementId가 포함되어 있는지 확인합니다. 이 ID는 Firebase 프로젝트에서 Analytics를 사용 설정하고 웹 앱을 등록할 때 자동으로 생성되며 Analytics를 사용하는 데 필요합니다.
앱에서 Firebase Hosting을 사용하고 Firebase SDK에 예약된 URL을 사용하는 경우 다음 안내를 따르세요.
Firebase는 자동으로 애플리케이션 구성을 처리합니다. 설정을 완료하려면 프로젝트 설정에 있는 내 앱 카드의 스크립트를 앱의 <body> 태그에 추가합니다(아직 추가하지 않은 경우).
앱에서 예약된 URL을 사용하지 않는 경우: 기존 웹 앱으로 작업하는 경우measurementId 필드가 포함되도록 코드에서 Firebase 구성 객체를 업데이트합니다. 구성 객체는 다음 예시와 유사합니다.
// For FirebaseJavaScript SDK v7.20.0 and later, `measurementId` is an optional fieldconstfirebaseConfig={apiKey:"API_KEY",authDomain:"PROJECT_ID.firebaseapp.com",databaseURL:"https://PROJECT_ID.firebaseio.com",projectId:"PROJECT_ID",storageBucket:"PROJECT_ID.firebasestorage.app",messagingSenderId:"SENDER_ID",appId:"APP_ID",measurementId:"G-GA_MEASUREMENT_ID"};
이전에 gtag.js 스니펫을 사용하여 앱에서 Google 애널리틱스를 실행한 경우 다음 중 하나를 수행하려면 앱을 추가로 설정해야 할 수 있습니다.
Firebase에서 Google Analytics 호출을 페이지에 추가하고 같은 페이지에서 직접 gtag() 호출을 계속 사용하려고 합니다.
직접 gtag() 호출과 Firebase로 전송된 Google Analytics 데이터 간에 동일한 측정 ID를 사용하려고 합니다.
모든 Firebase 서비스에서 이벤트를 사용할 수 있도록 하려면 다음 추가 설정 단계를 완료합니다.
gtag('config', 'GA_MEASUREMENT_ID'); 줄을 삭제합니다. 여기서 GA_MEASUREMENT_ID는 Firebase 웹 앱의 measurementId입니다. 페이지의 다른 애널리틱스 속성에 다른 ID가 있으면 해당 구성 줄을 삭제하지 않아도 됩니다.
gtag()로 이벤트를 전송하기 전에 firebase.analytics()를 호출해야 합니다.
그렇지 않으면 gtag() 호출을 통해 ID로 전송된 이벤트는 Firebase와 연결되지 않으며 다른 Firebase 서비스에서 타겟팅할 수 없습니다.
모든 앱에 권장되는 특정 이벤트가 있으며 특정 비즈니스 유형이나 카테고리에 권장되는 이벤트가 있습니다. 추천 이벤트를 사전 정의된 파라미터와 함께 전송해야 합니다. 이렇게 하면 보고서에 세부정보가 최대한 포함되고 향후 기능 및 통합을 즉시 사용할 수 있습니다. 이 섹션에서는 사전 정의된 이벤트 로깅을 보여줍니다. 이벤트 로깅에 대한 자세한 내용은 이벤트 로깅을 참조하세요.
다음 예시에서는 사용자가 앱에서 알림을 수신했음을 나타내는 추천 이벤트를 로깅하는 방법을 보여줍니다.
[null,null,["최종 업데이트: 2025-08-21(UTC)"],[],[],null,["iOS+ Android Web Flutter \n\n\u003cbr /\u003e\n\nThis quickstart shows you how to add Google Analytics to your app and\nbegin logging events.\n\nGoogle Analytics collects usage and behavior data for your app. The SDK\nlogs two primary types of information:\n\n- **Events:** What is happening in your app, such as user actions, system events, or errors.\n- **User properties:** Attributes you define to describe segments of your user base, such as language preference or geographic location.\n\nAnalytics automatically logs some\n[events](https://support.google.com/firebase/answer/6317485) and\n[user properties](https://support.google.com/firebase/answer/6317486);\nyou don't need to add any code to enable them.\n\nBefore you begin\n\nIf you haven't already, [add Firebase to your JavaScript\nproject](/docs/web/setup) and make sure that Google Analytics is enabled\nin your Firebase project:\n\n- If you're creating a new Firebase project, enable Google Analytics\n during the project creation workflow.\n\n- If you're using an existing Firebase project that doesn't have\n Google Analytics enabled, go to the\n [*Integrations*](//console.firebase.google.com/project/_/settings/integrations)\n tab of your settings \\\u003e *Project settings* to enable it.\n\n| **Warning:** Any Firebase project created before July 31, 2019 must be upgraded to the full [Google Analytics 4 experience](https://support.google.com/analytics/answer/10089681) if it hasn't already. (Banners display in the Analytics dashboard if an upgrade is required.) The associated Terms of Service must be [accepted by February 15, 2022](https://support.google.com/analytics/answer/10960488) to ensure data collection continues. See the Support FAQ on the upgrade for help [finding project Owners](/support/faq#analytics-upgrade-tos).\n\nWhen you enable Google Analytics in your project, your Firebase web apps\nare linked to Google Analytics data streams associated with an\n[App + Web property](//developers.google.com/analytics/devguides/collection/app-web/tag-guide).\n\nAdd the Analytics SDK to your app\n\nDepending on how your web application is hosted, your configuration may be\nhandled automatically or you may need to update your\n[Firebase configuration object](/docs/projects/learn-more#config-files-objects).\nIf your web app already uses Google Analytics, you may need to do additional\nsetup described in [Use Firebase with existing gtag.js tagging](#firebase-gtag).\n\n1. Check that your Firebase config object in your code contains\n `measurementId`. This ID is automatically created when you enable\n Analytics in your Firebase project and register a web app, and it's\n required to use Analytics.\n\n | **Note:** For apps using the **Firebase JavaScript SDK v7.20.0 and later** , Firebase dynamically fetches the `measurementId` when your app initializes Analytics. Having this ID in your config object is optional, but it does serve as a fallback in the rare case that the dynamic fetch fails.\n - **If your app uses Firebase Hosting *and* uses\n [reserved URLs](/docs/hosting/reserved-urls) for the Firebase SDKs**:\n\n Firebase automatically handles configuring your application. To complete\n setup, add the scripts from the ***Your apps*** card in your\n [Project settings](https://console.firebase.google.com/project/_/settings/general/)\n to the \\\u003cbody\\\u003e tag of your app, if you haven't already.\n - **If your app does not use reserved URLs** :\n **If you're working with an existing web app** , update the Firebase config\n object in your code to ensure the `measurementId` field is present. The\n config object should look similar to the following example:\n\n // For Firebase JavaScript SDK v7.20.0 and later, `measurementId` is an optional field\n const firebaseConfig = {\n apiKey: \"\u003cvar translate=\"no\"\u003eAPI_KEY\u003c/var\u003e\",\n authDomain: \"\u003cvar translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e.firebaseapp.com\",\n databaseURL: \"https://\u003cvar translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e.firebaseio.com\",\n projectId: \"\u003cvar translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e\",\n storageBucket: \"\u003cvar translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e`.firebasestorage.app`\",\n messagingSenderId: \"\u003cvar translate=\"no\"\u003eSENDER_ID\u003c/var\u003e\",\n appId: \"\u003cvar translate=\"no\"\u003eAPP_ID\u003c/var\u003e\",\n measurementId: \"G-\u003cvar translate=\"no\"\u003eGA_MEASUREMENT_ID\u003c/var\u003e\"\n };\n\n2. If you haven't already, [install the Firebase JS SDK and initialize Firebase](/docs/web/setup#add-sdk-and-initialize).\n\n3. Add the Analytics JS SDK and initialize Analytics:\n\nWeb\n\n\n| [Learn more](/docs/web/learn-more#modular-version) about the tree-shakeable modular web API and [upgrade](/docs/web/modular-upgrade) from the namespaced API.\n\n\u003cbr /\u003e\n\n```python\nimport { initializeApp } from \"firebase/app\";\nimport { getAnalytics } from \"firebase/analytics\";\n\n// TODO: Replace the following with your app's Firebase project configuration\n// See: https://firebase.google.com/docs/web/learn-more#config-object\nconst firebaseConfig = {\n // ...\n};\n\n// Initialize Firebase\nconst app = initializeApp(firebaseConfig);\n\n\n// Initialize Analytics and get a reference to the service\nconst analytics = getAnalytics(app);\n```\n\nWeb\n\n\n| [Learn more](/docs/web/learn-more#modular-version) about the tree-shakeable modular web API and [upgrade](/docs/web/modular-upgrade) from the namespaced API.\n\n\u003cbr /\u003e\n\n```python\nimport firebase from \"firebase/compat/app\";\nimport \"firebase/compat/analytics\";\n\n// TODO: Replace the following with your app's Firebase project configuration\n// See: https://firebase.google.com/docs/web/learn-more#config-object\nconst firebaseConfig = {\n // ...\n};\n\n// Initialize Firebase\nfirebase.initializeApp(firebaseConfig);\n\n\n// Initialize Analytics and get a reference to the service\nconst analytics = firebase.analytics();\n```\n\nUse Firebase with existing gtag.js tagging\n\nIf you previously had Google Analytics running in your app using the\n[gtag.js snippet](//developers.google.com/analytics/devguides/collection/gtagjs/),\nyour app may require additional setup if you plan to do one of the following:\n\n- Add Google Analytics calls from Firebase to the page but also plan to continue using `gtag()` calls directly on the same page.\n- Want to use the same measurement ID between both direct `gtag()` calls and Google Analytics data sent to Firebase.\n\nTo ensure your events are available for use by all Firebase services, complete\nthe following additional setup steps:\n\n- Remove the line `gtag('config', '`\u003cvar translate=\"no\"\u003eGA_MEASUREMENT_ID\u003c/var\u003e`');` where the `GA_MEASUREMENT_ID` is the `measurementId` of your Firebase web app. If you have other IDs for other Analytics properties on the page, you do not need to remove their config line.\n- Make sure you call `firebase.analytics()` before you send any events with `gtag()`.\n\nOtherwise, events sent to that ID with `gtag()` calls will not be associated\nwith Firebase and will not be available for targeting in other\nFirebase services.\n\nStart logging events\n\nAfter you have initialized the\n[Analytics service](/docs/reference/js/analytics), you can\nbegin to log events with the\n[`logEvent()`](/docs/reference/js/analytics#logevent)\nmethod.\n\nCertain events are\n[recommended for all apps](https://support.google.com/firebase/answer/6317498);\nothers are recommended for specific business types or verticals. You should send\nsuggested events along with their prescribed parameters, to ensure maximum\navailable detail in your reports and to benefit from future features and\nintegrations as they become available. This section demonstrates logging a\npre-defined event, for more information on logging events, see\n[Log events](/docs/analytics/events?platform=web).\n\nThe following example demonstrates how to log a recommended event to indicate a\nuser has received a notification in your app: \n\nWeb \n\n```javascript\nimport { getAnalytics, logEvent } from \"firebase/analytics\";\n\nconst analytics = getAnalytics();\nlogEvent(analytics, 'notification_received');https://github.com/firebase/snippets-web/blob/467eaa165dcbd9b3ab15711e76fa52237ba37f8b/snippets/analytics-next/index/analytics_log_event.js#L8-L11\n```\n\nWeb \n\n```javascript\nfirebase.analytics().logEvent('notification_received');https://github.com/firebase/snippets-web/blob/467eaa165dcbd9b3ab15711e76fa52237ba37f8b/analytics/index.js#L12-L12\n```\n\nNext steps\n\n- Understand [each Analytics report](/docs/analytics/reports).\n- Use the [DebugView](/docs/analytics/debugview) to verify your events.\n- Explore your data in the [Firebase console](//console.firebase.google.com/project/_/analytics/).\n- Explore the guides on [events](/docs/analytics/events?platform=web) and [user properties.](/docs/analytics/user-properties?platform=web)\n- Learn how to export your data to [BigQuery.](https://support.google.com/firebase/answer/7030014)"]]