Interactive Demo
Build with Orb

AI Leaderboards

Track who's adopting your AI product, motivate your team, and share progress โ€” powered by Orb's usage billing infrastructure.

1
Track
2
Setup
3
Build
4
Review
5
Pizzaz
6
Ship

What does great adoption look like?

Before you build, decide which signal matters most to your team. This becomes your leaderboard metric โ€” the single number that captures who's getting the most value from your AI product.

Like billable metrics, you should match this to how your customers understand value. Keeping your leaderboard metric close to how you bill makes calculations easy โ€” but less technical users may not grasp how it translates to real outcomes. There's a spectrum.

Tokens
Credits
Work Output
Outcomes
๐Ÿช™
Credits

The current gold standard in AI pricing. Credits are simpler to understand because they often translate to costs. But less technical teams may still not fully understand how this translates โ€” and tracking the metric you bill on can give the impression that users are racking up costs rather than value.

โ† Easy for your team ยทยทยทยทยท Easy for users โ†’

For this dashboard, we'll keep it simple and go with Credits โ€” the most common starting point for AI products.

Leaderboards run on Licenses.

Licenses are how top AI companies model per-user usage on team plans. Instead of pooling all consumption together, each user gets their own allotted credit budget to draw down. This means one power user can't deplete a whole team's usage โ€” and reporting on individual-level usage becomes a first-class capability, not an afterthought.

Orb supports this natively with the Licenses API. To call it, you'll need your ORB_SUBSCRIPTION_ID and an ORB_API_KEY from your Orb dashboard.

๐Ÿชฃ
Individual credit pools
Each user has their own allotment โ€” no more one person draining the team budget.
๐Ÿ“Š
Per-user reporting
Individual-level usage is a first-class API capability, not a custom query.
๐Ÿ†
Leaderboard-ready
The data shape maps directly to ranked tables, progress bars, and award logic.
โ‘  GET /license_types
โ‘ก GET /licenses/usage

Call this first to discover your license type IDs. The usage endpoint requires a license_type_id, so this is a required prerequisite. Most accounts have one type (e.g. "AI Seat").

Sample curl
curl https://api.withorb.com/v1/license_types?limit=100 \ -H "Authorization: Bearer $ORB_API_KEY"
Sample response
{ "data": [ { "id": "lt_abc123", "name": "AI Seat", "grouping_key": "user_id" } ], "pagination_metadata": { "has_more": false, "next_cursor": null } }

What you need from this response

Save the id field from each license type. You'll pass it as license_type_id in Call 2. If you have multiple types, the leaderboard pipeline fetches usage for each and sums credits per user automatically.

Structure and automate the pipeline

Key architecture decisions that shape the app.

Framework
Next.js 15
App Router + async server components. searchParams must be awaited โ€” it's a Promise in Next 15.
Data fetching
On load, server-side
Three parallel fetches via Promise.all: current week, previous week, Q1 to date. No cron, no database.
UI
shadcn/ui + Tailwind
Date picker is "use client"; everything else server-rendered. Week stored in URL as ?start=&end=.
Config
Env vars only
ORB_API_KEY and ORB_SUBSCRIPTION_ID in Vercel dashboard. Never browser-exposed.

Here's your leaderboard โ€” functional, but plain.

The data is all there, but to really motivate people, we want to take this further.

AI Adoption Leaderboard
๐Ÿ“… Jan 20 โ€“ Jan 26, 2025
Place User Credits Used vs. Last Week
1 Elena Marchetti 48,210 โ–ฒ 2 places
2 James Okafor 39,550 โ–ผ 1 place
3 Priya Suresh 34,800 โ–ฒ 1 place
4 Tom Bauer 32,500 โ–ผ 1 place
5 Anika Johansson 25,110 โ–ฒ 3 places
6 Carlos Reyes 21,300 โ–ผ 1 place
7 Mei-Lin Zhou 17,050 โ€”
8 Farrukh Tashkentov 13,720 โ–ฒ 1 place
9 Sophie Dubois 10,880 โ–ผ 2 places
10 Ravi Nair 7,410 โ€”

Ways companies drive adoption

Gamifying the leaderboard gives us more levers to drive adoption than simple visibility. Here's a few examples of how AI-forward companies are motivating transformation.

๐ŸŽ
Incentives
Top users earn bonus credits, gift cards, or extra seat access at end of quarter.
๐Ÿ†
Awards
Named titles like "King of the Hill" that refresh weekly create social currency.
โš”๏ธ
Competition
Head-to-head matchups and public rankings make usage visible โ€” everyone wants to climb.

Now we're talking.

Awards, progress, and friendly rivalry โ€” the same data, now with real motivating power.

๐Ÿ‘‘ King of the Hill
Count trailing consecutive weeks at #1. Requires 3+ weeks for full title. Extend by passing historicalSnapshots[].
๐Ÿš€ Mover & Shaker
Computed as prevRank โˆ’ currentRank. The user with the highest positive value wins.
โš”๏ธ Battle Royale
Two users within 2 places of each other in both current and previous week. Winner = smallest combined gap.
๐Ÿ‘‘
King of the Hill
Elena Marchetti
#1 for 4 weeks straight
๐Ÿš€
Mover & Shaker
Anika Johansson
+8 places over 2 weeks
โš”๏ธ
Battle Royale
Priya vs. Tom
Within 1 place for 2 weeks
AI Adoption Leaderboard
๐Ÿ“… Jan 20 โ€“ Jan 26, 2025
Place User Credits Used vs. Last Week
1 Elena Marchetti ๐Ÿ‘‘ KOTH 48,210 โ–ฒ 2 places
2 James Okafor 39,550 โ–ผ 1 place
3 Priya Suresh โš”๏ธ BATTLE 34,800 โ–ฒ 1 place
4 Tom Bauer โš”๏ธ BATTLE 32,500 โ–ผ 1 place
5 Anika Johansson ๐Ÿš€ MOVER 25,110 โ–ฒ 3 places
6 Carlos Reyes 21,300 โ–ผ 1 place
7 Mei-Lin Zhou 17,050 โ€”
8 Farrukh Tashkentov 13,720 โ–ฒ 1 place
9 Sophie Dubois 10,880 โ–ผ 2 places
10 Ravi Nair 7,410 โ€”

Q1 Incentive Progress

๐Ÿ† Winners receive a trophy and a $200 gift card to a merchant of their choosing!

Elena Marchetti
287,440 / 350,000 credits
Jan 1Mar 31
James Okafor
241,200 / 350,000 credits
Jan 1Mar 31
Priya Suresh
198,600 / 350,000 credits
Jan 1Mar 31

Build your own in an afternoon.

You need three things before you start. Once you have them, download the Claude Code prompt below โ€” it contains everything needed to scaffold the full Next.js app.

๐ŸŒ
Vercel account
A free Hobby account at vercel.com is all you need. It includes hosting and environment variable management.
๐Ÿ”‘
Orb API key
Find it in your Orb dashboard under Settings โ†’ API Keys. Use your live mode key. This becomes ORB_API_KEY in Vercel.
๐Ÿ“‹
Subscription ID
In your Orb dashboard, go to Customers, click into the customer, and open their active subscription. The sub_ ID is at the top. This becomes ORB_SUBSCRIPTION_ID.

Setting environment variables in Vercel

After importing your repo, go to Project Settings โ†’ Environment Variables. Add ORB_API_KEY and ORB_SUBSCRIPTION_ID as separate variables. They'll be available server-side only โ€” never exposed to the browser.

๐Ÿ“ฆ

Clone the repo

The finished app is on GitHub. Fork it, add your env vars, and deploy to Vercel in minutes.

โ†— View on GitHub
๐Ÿ“„

Build with a prompt

Download the Claude Code prompt โ€” it has the full spec, API calls, awards logic, and design tokens to scaffold from scratch.