/Docs
Register

Next.js

Add OpenRevenue to App Router or Pages Router with Next.js Script.

Add the script

Copy your project ID from Settings → General, then add the tracker to the right file for your router.

Use Next.js Script. It loads the tracker outside your app bundle.

App Router

Add the script to your root app/layout.tsx:

app/layout.tsx
import Script from "next/script" export default function RootLayout({ children }) {  return (    <html>      <body>        {children}        <Script          src="https://api.openrevenue.com/tracker.js"          data-site="your-project-id"          strategy="afterInteractive"        />      </body>    </html>  )}

Pages Router

Add the script to your pages/_app.tsx:

pages/_app.tsx
import Script from "next/script"import type { AppProps } from "next/app"import { API_URL } from "@/lib/urls" export default function App({ Component, pageProps }: AppProps) {  return (    <>      <Component {...pageProps} />      <Script        src="https://api.openrevenue.com/tracker.js"        data-site="your-project-id"        strategy="afterInteractive"      />    </>  )}

npm package

Prefer a package? Install openrevenue and use the thin OpenRevenueScript helper (still loads the CDN tracker), or call init from a client component.

terminal
npm install openrevenue
app/layout.tsx
import { OpenRevenueScript } from "openrevenue/next" export default function RootLayout({ children }) {  return (    <html>      <body>        {children}        <OpenRevenueScript siteId="your-project-id" />      </body>    </html>  )}
components/analytics.tsx
"use client" import { useEffect } from "react"import { init, track } from "openrevenue" export function Analytics() {  useEffect(() => {    init({ siteId: "your-project-id" })  }, [])   return null} // Elsewhere: track("signup")

Verify

Deploy your app and visit any page. A pageview should appear in your OpenRevenue dashboard within seconds.

OpenRevenue ignores localhost and 127.0.0.1 automatically. Open your live site, not the dev server.