Skip to main content

Overview

Custom properties (also called custom props or event metadata) allow you to attach additional context to your pageviews and custom events. Properties enable you to segment and filter your analytics data by dimensions that matter to your business.
Custom properties are available on the Business plan and higher.

Use Cases

  • Track which author wrote blog posts receiving the most traffic
  • Identify which pricing tier users are viewing
  • Segment users by membership level or feature access
  • Track A/B test variants and their performance
  • Monitor different product categories or SKUs
  • Analyze user journey stages

Property Format

Custom properties are key-value pairs where both keys and values must be strings:
All property values must be strings. Numbers and booleans will be automatically converted to strings.

Adding Properties to Events

Custom Events

Add properties when tracking custom events:

Pageviews

Add properties to pageview events in several ways:

Per-Pageview Properties

Manually track pageviews with properties:

Global Properties via Config

Set properties for all events using the customProperties config option:
All events will include these properties automatically.

Script Attributes (Legacy)

For the script tag method, use event- attributes:
You must use the script.pageview-props.js variant to enable pageview properties via script attributes.

Property Constraints

Naming Rules

Property keys must:
  • Contain only letters, numbers, and underscores
  • Be between 1 and 300 characters long
  • Not start with a number

Value Limits

Property values:
  • Must be strings
  • Maximum length: 2000 characters
  • Empty strings are allowed

Limits per Event

  • Maximum 30 custom properties per event
  • Properties exceeding limits are silently dropped

Tagged Events with Properties

Add properties to tagged elements using CSS classes:
This tracks a “Signup” event with:

Spaces in Values

Use + for spaces in property values:
Results in:

Server-side Properties

When using the Events API, include properties in the p field:

Viewing Property Data

Custom properties appear in your Plausible dashboard when:
  1. Events with properties are tracked
  2. You configure the property as a custom dimension in your site settings
  3. You view event details or create custom reports
Properties enable breakdowns like:
  • “Signup” events by plan property (free vs premium)
  • “Pageview” by author (which authors get most traffic)
  • “Purchase” by product (top-selling products)

Common Patterns

Blog Analytics

Track blog post metadata:

User Segmentation

A/B Testing

E-commerce

Feature Usage

Content Engagement

Transform Request

Modify or filter events and properties before sending:
Returning null or any falsy value from transformRequest will prevent the event from being sent.

Best Practices

1

Keep Values Consistent

Use consistent casing and formatting:
  • plan: 'premium' everywhere
  • plan: 'Premium' and plan: 'PREMIUM' in different places
2

Don't Track PII

Never include personally identifiable information:
  • ❌ Email addresses, phone numbers, full names
  • ✅ User IDs, categories, anonymized segments
3

Limit Property Count

Only track properties you’ll actually use for analysis. Each property adds to the event size.
4

Use Descriptive Keys

Choose clear property names:
  • subscription_tier, payment_method
  • t, pm, val1
5

String Formatting

Convert values to strings explicitly to avoid issues:

Next Steps

Custom Events

Learn about tracking custom events

Events API

Server-side tracking with properties