WaitKitWaitKit
Guides

Metadata

Attach custom JSON metadata to waitlist subscribers using the WaitKit SDK. Store plan tiers, referral codes, and product-specific context with each signup. Limits and update patterns.

The metadata field lets you attach structured data to a subscriber without changing the schema. Metadata is stored as JSON alongside the subscriber entry.

When to use metadata

Good candidates for metadata:

  • Selected plan tier ("pro", "free")
  • Referral or coupon code
  • Signup timestamp in the user's timezone
  • A/B test variant assignment
  • Any product-specific context
await wk.subscribers.create({
  email: "user@example.com",
  metadata: {
    plan: "pro",
    referralCode: "FRIEND10",
    signedUpAt: "2025-06-11T12:00:00Z",
  },
});

Limits

  • Metadata must be JSON-serializable (no functions, undefined, or circular references)
  • Maximum payload size: 10 KB per entry
  • Deeply nested structures are accepted but not indexed for search

Updating metadata after signup

Use the dashboard to update an existing subscriber's name, source, or metadata. Navigate to the Waitlist tab, find the entry, and edit it.

Metadata is write-once from the SDK - call subscribers.create() only for new signups. To update, use the dashboard entry editor.

Search considerations

Metadata values are stored but not individually indexed. You can view the full metadata blob on each entry's detail page in the dashboard. If you need to filter or search by specific metadata fields, include those values in a format visible in the dashboard table (e.g., in the subscriber name or as a discrete source value).

On this page