Points systems

Reward users for in-app behaviors

Purpose-built app gamification for rewarding any in-app interaction. Increase engagement and retention with XP, gems, coins, and more — without a custom points engine.

Powering gamification experiences for 1M+ users

CampfireRevisionDojoLexiooOnePrepLealCyberPatientBohemian ResearchMaths GenieRitmo

Read our customer stories

Points engine

A purpose-built points engine

Build points systems like XP, coins, or energy using a flexible points engine. Make updates without new releases.

Flexible points engine
Build points systems like XP, coins, or energy using a flexible points engine with earn and burn mechanics.
Zero maintenance
Reward users for any in-app behavior without a custom points engine.
Ship updates without new releases
Modify points logic in the dashboard and push live instantly without constantly shipping new releases.

Points boosts

Increase app engagement with points boosts

Create custom boosts to grant extra points for specific actions, and track their impact on engagement and retention.

Limited-time points multipliers
Apply temporary multipliers to points logic for key calendar events, holidays, or other promotional campaigns.
Target specific user cohorts
Segment boosts to specific user groups including subscription tiers, location-based, or behavior-based cohorts.
Monitor boost impact
Track the impact of boosts on engagement and retention to optimize your points system.

Levels

Create progression systems with points levels

Create custom levels to reward users for reaching specific points thresholds. Automatically progress users through levels based on their points.

Custom level thresholds
Define custom thresholds for each level to reward users for reaching specific points milestones.
Analyze level distribution
Track how users are progressing through levels to identify where to optimize engagement and retention.

Points analytics

Understand points performance and retention

Track how points systems impact engagement and retention, and use that data to balance rewards and optimize for long-term retention.

Points balancing
Measure and optimize points earned to keep rewards fair and consistent with the user experience.
Optimize for retention
Compare points triggers to understand which rewards are most effective at retaining users.
Iterate on logic
Update your points system from the dashboard and monitor changes to user behavior and retention.

Gamification software for modern product teams

The only gamification platform built for the modern era. Control via API or MCP and wire into your development workflow across multiple environments.

Official Gamification SDKs

NodeJS
Go
Java
.NET
PHP
Python
Ruby
First-class APIs for fast-moving teams
Idempotent, retry-safe, time-zone aware. Designed to feel obvious the first time you read the docs.
points.ts
// Read current user points const points = await trophy.users.points(user.id, 'xp') // Read daily points history const history = await trophy.users.pointsEventSummary(user.id, 'xp', { aggregation: 'daily', startDate: new Date('2026-01-01'), endDate: new Date('2026-01-31'), }) // Read level configuration and active points boosts const levels = await trophy.points.levels('xp') const boosts = await trophy.points.boosts('xp')
Control everything via MCP
Beta
Connect Trophy to MCP clients like Cursor and Claude Code and configure features without touching the dashboard.

Trophy MCP

Sonnet 4.6 · 8 tools loaded

> Set up an XP points system with levels and add a campaign boost for a VIP segment

Listed Trophy MCP tools · read points and boosts docs

(ctrl+o to expand)

I'll wire points, levels, and an admin boost flow:

  1. Create an XP points program with metric triggers
  2. Expose level metadata for the profile experience
  3. Add a temporary multiplier boost for VIP users

points.create({ name: 'XP', key: 'xp', triggers: [{ metric: 'sessions-completed', threshold: 1, points: 25 }] })

points.levels.list({ key: 'xp' })

points.boosts.create({ systemKey: 'xp', boosts: [{ userId: 'usr_vip', multiplier: 2, name: 'VIP weekend' }] })

XP, levels, and boost automation are configured in staging, should I promote these changes?

Connect your stack via webhooks
Trigger workflows in third-party tools and internal systems in real time based on changes in Trophy.
points.changed
Trophy
points.level_changed
Customer.io
Knock
OneSignal
Mixpanel
Amplitude
Develop, test, and deploy across environments
Separate dev, staging, and production environments with their own keys, data, and configuration. Promote changes with confidence.
Production
Staging
Pre-prod
Jason Dev
Charlie Dev
Keith Dev

Scale with confidence

Trusted by startups and enterprises alike. Scale seamlessly from your first to your millionth user.

Scale from first user to millionth
Latency, throughput, and uptime that hold up as your user base grows.

150M

API requests · 30D

just now

166ms

p95 latency · 24H

just now

100.0%

Uptime · 90D

Secure by design
Encryption in transit and at rest, scoped API keys, and privacy-first defaults out of the box.
  • Data encryption

    TLS 1.2+ in transit and AES-256 at rest

  • Privacy-first

    Trophy operates without PII by default

  • Secure API keys

    Rotation and revocation on demand

Reliable at scale
Fault tolerance, rate limits, and idempotent APIs keep gamification logic dependable under load.
  • Fault tolerant

    Automatic failover through redundancy

  • Rate limited

    Per-endpoint limits maintain fair use

  • Idempotent

    Retry requests without side-effects