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: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 thecustomProperties config option:
- Static Properties
- Dynamic Properties
Script Attributes (Legacy)
For the script tag method, useevent- 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:Spaces in Values
Use+ for spaces in property values:
Server-side Properties
When using the Events API, include properties in thep field:
Viewing Property Data
Custom properties appear in your Plausible dashboard when:- Events with properties are tracked
- You configure the property as a custom dimension in your site settings
- You view event details or create custom reports
- “Signup” events by
planproperty (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: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'andplan: '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