Guides / Signups & Auth

How to Track Firebase Auth User Registrations

3 min readยทSignups & Auth

Use Firebase Cloud Functions

Firebase Auth triggers let you run code when a user is created. This is the cleanest way to log signups.

ts
// functions/src/index.ts
import * as functions from "firebase-functions";
import { logit } from "./lib/logit";

export const onUserCreated = functions.auth.user().onCreate(async (user) => {
  const provider = user.providerData[0]?.providerId ?? "unknown";

  await logit.now("signups", {
    event: "New Firebase Auth user",
    description: user.email ?? user.phoneNumber ?? user.uid,
    icon: "๐Ÿ‘ค",
    notify: true,
    tags: { provider: provider.replace(".com", "") },
    metadata: {
      uid: user.uid,
      email: user.email,
      provider,
      displayName: user.displayName,
      createdAt: user.metadata.creationTime,
    },
  });
});

logit helper (Node.js compatible)

ts
// functions/src/lib/logit.ts
import { init } from "logit";

export const logit = init({
  token: process.env.LOGIT_API_KEY ?? functions.config().logit?.api_key ?? "",
});

Set the API key

bash
# Using Firebase CLI
firebase functions:config:set logit.api_key="lk_live_xxxxxxxxxxxxxxxx"

# Or in .env.local
LOGIT_API_KEY=lk_live_xxxxxxxxxxxxxxxx

Track deletions too

ts
export const onUserDeleted = functions.auth.user().onDelete(async (user) => {
  await logit.now("churn", {
    event: "Firebase user deleted",
    description: user.email ?? user.uid,
    icon: "๐Ÿ‘‹",
    notify: false,
    metadata: { uid: user.uid, email: user.email },
  });
});

Note: Cloud Functions trigger asynchronously โ€” there may be a few seconds delay between signup and the LogIt notification. For instant alerts, call LogIt directly in your app's sign-up handler instead.

Try LogIt free

7-day trial. No credit card required.

Start free