//GoogleAnalytics.tsx
"use client";
import Script from "next/script";
const GoogleAnalytics = ({ GA_TRACKING_ID }: { GA_TRACKING_ID: string }) => {
return (
<>
<Script
src={`https://www.googletagmanager.com/gtag/js?id=${GA_TRACKING_ID}`}
strategy="afterInteractive"
/>
<Script id="google-analytics" strategy="afterInteractive">
{`
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', ${GA_TRACKING_ID});
`}
</Script>
</>
);
};
export default GoogleAnalytics;
Run Code Online (Sandbox Code Playgroud)
//layout.tsx
import GoogleAnalytics from "@/components/molecules/GoogleAnalytics";
import { ReactNode } from "react";
export default function RootLayout({ children }: { children: ReactNode }) {
return (
<html lang="en">
<GoogleAnalytics GA_TRACKING_ID={process.env.GA_TRACKING_ID} />
<body> …
Run Code Online (Sandbox Code Playgroud)