Main Header

Tier features (0, Plus, Pro)

Updated on July 30, 2026

SignalPress gates features by numeric tier (0, 1, 2) returned from the active license entitlement. Use signalpress_has_license_level( $minimum ) in code — never hard-code integration lists without a tier check.

Overview: Licensing, tiers, and permissions. Activation: License activation.

Tier names

TierMarketing namesignalpress_license_tier()
0Free0.0
1Plus1.0
2Pro2.0

signalpress_is_pro() is true when tier ≥ 1 and status is active or grace with valid activation credentials.

Core API (all tiers)

Available without a license:

Not on Tier 0: transformation hooks (signalpress/properties, signalpress/context, signalpress/target_services, etc.) — requires Tier 1+Hooks and Filters.

Feature matrix

Integrations and capture

FeatureTier 0Tier 1 PlusTier 2 Pro
Local, Email, RequestBinYesYesYes
Premium integrations (PostHog, Slack, GA4, …)Preview onlyYesYes
Per-service Developer diagnosticsLockedYesYes
Per-service Capture toastsLockedYes (admins)Yes (custom audience)
signalpress/* transformation hooksNoYesYes
Webhooks integrationDisabled1 HTTPS endpointUnlimited endpoints

Routing and delivery

FeatureTier 0Tier 1 PlusTier 2 Pro
Basic per-service enable/disableYesYesYes
Advanced event routing (environment, levels, include/exclude)LockedYesYes
Request rulesLockedLockedYes
Durable delivery queueNoNoYes
Email message templatesLockedLockedYes

Logs and monitoring

FeatureTier 0Tier 1 PlusTier 2 Pro
Delivery logs24 h, max 10 rows90 days, CSV exportUntil cleared, CSV export
Plugin status endpointLockedLockedYes
System Logs viewerLockedYesYes

Debugging

FeatureTier 0Tier 1 PlusTier 2 Pro
Basic sp()YesYesSuperseded by Pro when licensed
Pro debuggingLockedLockedYes
Capture toastsLockedYes (admins)Yes (custom audience)
Clockwork, cache bypass, error monitoringLockedLockedYes

Administration

FeatureTier 0Tier 1 PlusTier 2 Pro
Role-based permissionsLocked (admins only)Locked (admins only)Yes
License management UIRequires Pro pluginRequires Pro pluginRequires Pro plugin

Delivery log policy (code)

Central limits live in signalpress_delivery_log_policy():

Tierdisplay_limitRetentionstorage_limit_per_service
01024 hours10
12090 daysunlimited
220until clearedunlimited

Filter: signalpress/delivery_log_policy.

Per-feature entitlement map

Some integrations declare a required_license_feature checked via signalpress_has_feature( $feature ). The hub entitlement features map can grant individual flags; signalpress_can_use_pro_feature() also treats Tier 1+ as the baseline for most Pro UI gates.

Prefer signalpress_has_license_level() for tier-wide behavior and signalpress_has_feature() when integrating with hub-specific feature flags.

Checking tiers in code

PHP

// Minimum tier (0 = always true for free checks use explicit comparisons).
if ( signalpress_has_license_level( 1 ) ) {
	// Plus or Pro.
}

if ( signalpress_has_license_level( 2 ) ) {
	// Pro only.
}

// Read numeric tier without boolean gate.
$tier = signalpress_license_tier();

// Delivery log limits.
$policy = signalpress_delivery_log_policy();

Tier checks fail when:

  • No valid activation credentials
  • Status is not active or grace
  • Operation mode is pro_suspended or disabled

After license lapse

Saved settings, routing rules, queue rows, and credentials are preserved. UI shows locks and upgrade prompts until the license returns — Locked features and upgrade paths.