New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details
Socket
Book a DemoSign in
Socket

@adkit.so/meta-pixel

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@adkit.so/meta-pixel

Platform-agnostic Meta Pixel tracking wrapper with TypeScript support

latest
npmnpm
Version
1.1.5
Version published
Maintainers
1
Created
Source

Meta Pixel (JS/TS)

npm version npm downloads License: MIT

The most powerful and developer-friendly Meta Pixel integration for JavaScript & TypeScript applications.

A platform-agnostic wrapper for Meta Pixel that provides a seamless, type-safe experience with advanced features like event deduplication, multiple pixel support, and beautiful debug logging.

📚 Table of Contents

✨ Features

  • Typescript Support - Full TypeScript support with autocomplete for all official events and parameters
  • 🎯 Custom Events Support - Track custom events with full type safety and flexible data structures
  • 🚦 Event Deduplication - Support for preventing duplicate events with event IDs
  • 🔌 Multiple Pixels Support - Load and manage multiple pixel IDs effortlessly
  • 🐛 Debug Mode - Beautiful styled console logs for development and debugging
  • 🏠 Localhost Support - Easy configuration to enable/disable tracking on localhost

⚡ Quick Start

npm install @adkit.so/meta-pixel
import META from '@adkit.so/meta-pixel';

// 1. Initialize
META.init({ pixelIds: 'YOUR_PIXEL_ID' });

// 2. Track events
META.track('Purchase', { value: 99.99, currency: 'USD' });

That's it! 🎉

📦 Installation

npm install @adkit.so/meta-pixel

💡 Usage

Basic Initialization

Initialize the pixel as early as possible in your application entry point (e.g., main.ts, App.jsx, index.js).

import META from '@adkit.so/meta-pixel';

META.init({
    pixelIds: '1234567890',
    autoTrackPageView: true, // default: true
});

Tracking Events

// Track standard events
META.track('AddToCart', {
    value: 29.99,
    currency: 'USD',
    content_ids: ['SKU_123'],
    content_type: 'product',
});

// Track custom events
META.trackCustom('MyCustomEvent', {
    custom_param: 'value',
});

Multiple Instances

If you need separate instances for different parts of your application (rare):

import { createMetaPixel } from '@adkit.so/meta-pixel';

const marketingPixel = createMetaPixel();
marketingPixel.init({ pixelIds: 'MARKETING_ID' });

const productPixel = createMetaPixel();
productPixel.init({ pixelIds: 'PRODUCT_ID' });

⚙️ Configuration

Configuration Options

OptionTypeDefaultDescription
pixelIdsstring | string[]''Required. Single pixel ID or array of pixel IDs
autoTrackPageViewbooleantrueAutomatically track PageView on initialization
debugbooleanfalseEnable styled console logs with background colors
enableLocalhostbooleanfalseEnable tracking on localhost (useful for testing)

Multiple Pixels Example

META.init({
    pixelIds: ['PIXEL_ID_1', 'PIXEL_ID_2', 'PIXEL_ID_3'],
    debug: true,
});

📊 Standard Events

All Meta Pixel standard events are supported with full TypeScript autocomplete. These events help you track important actions on your website and optimize your ad campaigns.

EventDescriptionCommon Use Cases
AddPaymentInfoPayment info addedCheckout flow
AddToCartItem added to shopping cartE-commerce
AddToWishlistItem added to wishlistE-commerce
CompleteRegistrationUser completed registrationSign-ups, account creation
ContactUser contacted businessContact forms
CustomizeProductProduct customization startedProduct configurators
DonateDonation madeNon-profits
FindLocationLocation finder usedStore locators
InitiateCheckoutCheckout process startedE-commerce funnels
LeadLead submittedLead generation forms
PurchasePurchase completedTransaction confirmation
ScheduleAppointment scheduledBooking systems
SearchSearch performedSite search
StartTrialTrial startedSaaS applications
SubmitApplicationApplication submittedJob boards, loan applications
SubscribeSubscription startedNewsletters, subscriptions
ViewContentContent viewedProduct pages, blog posts

You can find the official list of standard events here.

📋 Event Data Parameters

All event parameters are optional but help improve ad targeting and conversion tracking.

ParameterTypeDescriptionExample
valuenumberMonetary value of the event99.99
currencystringISO 4217 currency code'USD', 'EUR', 'GBP'
content_idsstring[]Product IDs or SKUs['SKU_123', 'SKU_456']
content_typestringType of content'product', 'product_group'
content_namestringName of page/product'Blue T-Shirt'
content_categorystringCategory of page/product'Apparel', 'Electronics'
contentsArray<{id, quantity}>Detailed product information[{id: 'SKU_123', quantity: 2}]
num_itemsnumberNumber of items3
search_stringstringSearch query'running shoes'
statusbooleanRegistration/subscription statustrue
predicted_ltvnumberPredicted lifetime value of customer450.00

You can find the list of properties here

🚀 Advanced Usage

Event Deduplication

Prevent duplicate event tracking by using unique event IDs. This is crucial when tracking conversions from both client and server (CAPI).

const orderId = '12345';

META.track(
    'Purchase',
    {
        value: 299.99,
        currency: 'USD',
        content_ids: ['SKU_123'],
    },
    {
        eventID: `order-${orderId}`, // Unique Event ID
    },
);

Check if Pixel is Loaded

Useful if you need to conditionally run logic based on whether the pixel script has loaded.

if (META.isLoaded()) {
    META.track('Purchase', { value: 99.99, currency: 'USD' });
} else {
    console.log('Pixel not loaded yet');
}

Debug Mode

When debug: true is passed to init(), you'll see beautiful styled console logs:

  • 🔵 [Meta Pixel] Info messages (blue background)
  • [Meta Pixel] Success messages (green background)
  • ⚠️ [Meta Pixel] Warning messages (orange background)
META.init({
    pixelIds: 'YOUR_ID',
    debug: true,
});

📝 TypeScript Support

This package is written in TypeScript and bundles type definitions.

import type { StandardEvent, EventData, MetaPixelConfig } from '@adkit.so/meta-pixel';

const config: MetaPixelConfig = {
    pixelIds: '123',
};

const eventData: EventData = {
    value: 100,
    currency: 'USD',
};

❓ Troubleshooting

Pixel not loading?

  • Check your pixel ID - Make sure it's correct in your config
  • Enable debug mode - Set debug: true in init() to see detailed logs
  • Check browser console - Look for errors or warnings
  • Check Ad Blockers - Ad blockers often block the Meta Pixel script
  • Enable on localhost - Set enableLocalhost: true if testing locally

Events not showing in Meta Events Manager?

  • Wait a few minutes - Events can take 5-20 minutes to appear
  • Check Test Events - Use the Test Events tool in Meta Events Manager
  • Verify event names - Standard events are case-sensitive

📚 Official Documentation

Learn more about Meta Pixel from official Facebook resources:

🔗 Platform Packages

Using a framework? Check out our dedicated packages:

  • Nuxt - @adkit.so/meta-pixel-nuxt
  • React - @adkit.so/meta-pixel-react
  • Next.js - @adkit.so/meta-pixel-next

📖 Full Guide

For a complete step-by-step guide on installing and configuring Meta Pixel, check out our detailed tutorial:

How to Install Meta Pixel

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

📄 License

MIT

Made with ❤️ by Adkit

If this package helped you, please consider giving it a ⭐️ on GitHub!

Keywords

meta

FAQs

Package last updated on 26 Nov 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts