Skip to Content
Revenue & leaderboards

Revenue & Leaderboards

Nibgate provides payment processing, revenue tracking, and competitive leaderboards to help creators understand and grow their earnings.

Nibgate does not custody creator funds. Payments land in the creator’s on-chain fee wallet contract, which keeps 99% for the creator and routes a 1% protocol fee to the treasury — enforced by immutable bytecode. Nibgate indexes receipts and displays analytics. See Revenue model.

Payment flow

The payment flow connects the reader’s wallet to the creator’s fee wallet contract:

Reader wallet -> initiates payment on unlock UI (gateway or direct rail) -> USDC lands in the creator's GatewayFeeWallet contract (ARC testnet) -> Package reports receipt to Nibgate hub (amount + derived protocolFee) -> Keeper sweeps the wallet: gatewayMint then distribute() pays 99% to the creator EOA, 1% to treasury -> Dashboard and leaderboards update

Step by step

Reader initiates unlock

The reader clicks the unlock button on a paid post. The unlock UI displays the price, the creator’s brand, and a connect/pay prompt.

Payment processing

The reader’s wallet signs and submits the USDC payment through the Circle Gateway on ARC testnet. The gateway handles settlement and returns a receipt.

Funds arrive at the fee wallet

The USDC is transferred to the creator’s GatewayFeeWallet contract — the payment destination for all of that creator’s paid content. The contract is immutable and the split (99% creator / 1% treasury) is enforced on-chain; a keeper sweep pays out to the creator’s EOA shortly after. Nibgate never touches the funds.

Receipt indexed

The Nibgate package or Subblog backend reports the payment receipt to the hub. The receipt includes the amount, currency, buyer wallet, content ID, and transaction hash.

Analytics update

The dashboard updates earnings, unlock counts, and leaderboard rankings based on the verified receipt.

Leaderboard system

Nibgate maintains three types of leaderboards:

Ranking factors

All three boards rank by reputation score first (content/site/creator, 1–100), then unlock count, then views. Content additionally breaks ties by revenue, then newest createdAt. The current sorters are:

  • Content: reputationScore descunlocks descviews descrevenue desccreatedAt desc
  • Sites: reputationScore descunlocks descviews desc
  • Creators: reputationScore descunlocks descviews desc

(backend/src/server/routes/hub-routes.js:794, 822, 846)

Leaderboard views

Leaderboards are surfaced in the Nibgate Explore section (frontend/src/app/explore/_components/LeaderboardPreview.tsx). The board UI supports tab switching between content/sites/creators, search, and column sorting — it does not currently filter by time range or content type.

Revenue tracking

The admin dashboard provides detailed revenue tracking:

  • Total earnings: Aggregate USDC earned across all content.
  • Per-content earnings: Revenue breakdown by individual post.
  • Timeline: Earnings charted over time with daily/weekly/monthly granularity.
  • Receipt drilldown: Click any earnings entry to view the receipt details (transaction hash, buyer wallet, timestamp).
// Receipt event reported after unlock (the shape the hub indexes) { "paymentProvider": "circle-gateway", "paymentId": "...", "amount": "0.01", "revenue": "0.01", "currency": "USDC", "payer": "0xBuyerWallet", "recipient": "0xCreatorFeeWallet", "txHash": "0x...", "chainId": "5042002", "network": "eip155:5042002" }

Note: recipient is the creator’s fee wallet contract (the payment receiver) and payer is the buyer’s wallet. The SDK reports revenue as the gross price (legacy field name). The hub derives protocolFee (1% under hosted pay) from amount and stores both — so the creator’s net take is always amount − protocolFee, matching what the fee wallet contract later distributes on-chain (99% creator / 1% treasury of the wallet balance at sweep time; Circle’s own settlement fee, if any, is separate and comes out before the split).

Reputation scores

Reputation scores are computed from verified interactions:

ScoreRangeSource
Content reputation0.0–5.0 starsAverage rating from wallets that unlocked the content (only on-chain-proofed accepted ratings count)
Site reputation1–100Average content rating × 0.78 + verification bonus + content depth
Creator reputation1–100Average content rating × 0.76 + verified-site depth + content depth

Higher reputation scores can lead to better leaderboard placement and increased visibility in Explore.

Only verified unlocks (with indexed receipts) count toward reputation and leaderboard rankings. This prevents gaming the system with fake transactions.

Next reads

Last updated on