Lightweight affiliate tracking script for AffiliateBase - cookie-based attribution, conversion tracking, and Stripe integration
npm install affiliatebase-trackingLightweight, zero-dependency affiliate tracking script for AffiliateBase. Cookie-based attribution, conversion tracking, and automatic Stripe integration.


- Cookie-based referral attribution (30-day default)
- Multiple tracking parameters (?via=, ?ref=, ?affiliate=)
- Automatic Stripe Buy Button / Pricing Table integration
- Conversion tracking via email
- Promo code attribution
- Cross-domain link tagging
- Automatic form integration
- Zero dependencies, pure JavaScript (~26KB)
Add this snippet to your website's or before :
``html`
async
src="https://cdn.jsdelivr.net/npm/affiliatebase-tracking@1/src/index.js"
data-org-id="YOUR_ORG_ID"
>
Replace YOUR_ORG_ID with your organization ID from the AffiliateBase dashboard.
That's it! The script will automatically track referrals from affiliate links.
When a referred visitor signs up or makes a purchase, track the conversion:
`javascript`
affiliatebase("convert", { email: "customer@example.com" });
`javascript`
affiliatebase("ready", () => {
if (window.AffiliateBase.referral) {
console.log("Referred by:", window.AffiliateBase.affiliate?.name);
}
});
Add data-affiliatebase to your Stripe elements for automatic attribution:
`html
publishable-key="pk_live_xxx"
data-affiliatebase
>
`
Add data-affiliatebase="true" to forms to automatically include referral data:
`html`
| Attribute | Required | Description |
| --------------------------- | -------- | --------------------------------------- |
| data-org-id | Yes | Your organization ID |data-debug
| | No | Set to "true" for console logging |data-affiliatebase-params
| | No | Custom URL parameters (comma-separated) |
The script automatically detects these URL parameters:
- ?via=TOKEN (primary)?ref=TOKEN
- ?affiliate=TOKEN
- ?a=TOKEN
- ?referral=ID
- (preload existing referral)
Example affiliate link: https://yoursite.com?via=john123
`javascript
// Track conversion
affiliatebase("convert", { email: "customer@example.com" });
// Force attribution to specific affiliate
affiliatebase("source", "affiliate_token");
// Execute when loaded
affiliatebase("ready", () => {
console.log("Ready!");
});
`
Access attribution data via window.AffiliateBase:
`javascript`
window.AffiliateBase.referral; // Referral ID (UUID) or ""
window.AffiliateBase.affiliate; // Affiliate object or false
window.AffiliateBase.campaign; // Campaign object or false
window.AffiliateBase.coupon; // Coupon object or false
`javascript
window.addEventListener("AffiliateBase.initialized", () => {
console.log("Tracking initialized");
});
window.addEventListener("AffiliateBase.tracked", (e) => {
console.log("Referral tracked:", e.detail.referral);
});
`
Type definitions are included:
`typescript
import "affiliatebase-tracking";
affiliatebase("convert", { email: "test@example.com" });
if (window.AffiliateBase.referral) {
console.log("Affiliate:", window.AffiliateBase.affiliate?.name);
}
``
- Chrome/Edge (last 2 versions)
- Firefox (last 2 versions)
- Safari (last 2 versions)
- iOS Safari (last 2 versions)
MIT