Transfer points from one Leaderboard to Another

Move users' points to a different leaderboard (optionally scale them) and clear the source leaderboard in one run.

Overview

Move points from a source leaderboard to a target leaderboard for each user in a community. This template: fetches up to 1,000 entries from the source leaderboard, multiplies each user's points by an optional multiplier (default 1), awards the scaled points on the target leaderboard, and removes the original points from the source leaderboard.

How it works

  1. Trigger: run the automation manually (Webhook trigger provided).
  2. Get Leaderboard: fetches up to 1000 entries from the specified source leaderboard in your community.
  3. Loop: iterates over each leaderboard entry.
  4. Check: only process entries where totalPoints > 0.
  5. Calculate: sets variable points = totalPoints * pointsMultiplier (pointsMultiplier defaults to 1 if not provided).
  6. Add Points: adds the calculated points to the target leaderboard for the user.
  7. Remove Points: subtracts the original totalPoints from the source leaderboard (done by adding a negative points value), effectively clearing their points on the source.

Setup (what to provide)

  • community: select the community that contains both leaderboards.
  • sourceLeaderboard: choose the leaderboard to transfer points from.
  • targetLeaderboard: choose the leaderboard to transfer points to.
  • pointsMultiplier (optional): a number to multiply source points by before adding them to the target. Defaults to 1. Example: multiplier 5 turns 10 source points into 50 target points.

Important notes & best practices

  • Default multiplier: if you leave pointsMultiplier empty the template uses 1.
  • Source removal behavior: the automation removes the original points from the source by adding a negative points entry equal to the user’s current totalPoints. The points removed are NOT scaled — only the points added to the target are multiplied.
  • Entry limit: this workflow fetches up to 1,000 leaderboard entries per run. If you have more users, run the automation multiple times (or modify the template to page through results).
  • Non‑zero check: only users with totalPoints > 0 are processed. Users with zero are skipped.
  • Idempotency & safety: running the automation multiple times will duplicate the effects (points added to the target and removed from the source again). Export or snapshot leaderboards before running if you need a reversible audit trail.
  • Errors: the flow is configured to stop on errors; consider adding logging, a results table, or notification steps to capture successes/failures and TX details.

Logs & suggestions

  • This template does not create a run log table or send notifications by default. We recommend adding steps to:
    • write a "Transfer Log - <timestamp>" table row per user (user id, source points, points added, timestamp, status), and/or
    • send a Discord/Slack notification summarizing the run (count processed, skipped, failures).

Example inputs

  • community: 0e08ae46-d158-498e-a74d-6889399de363
  • sourceLeaderboard: b723c0f6-7d4f-4579-9e9a-f669a858a304
  • targetLeaderboard: 6453c900-4e97-4c8a-85e9-32adaa86f8a9
  • pointsMultiplier: (leave empty for 1) or 2 (to double points)

Tip

Run on a small subset first (or backup your leaderboards) to confirm the multiplier and behavior match expectations. Add a logging step so you can audit which users were processed and recover if you need to revert changes.

Automations for every community

Domino Lets Anyone
Build Easy Web3 Automations

Do more with your dApps without technical skills or a coding know-how. Domino makes it easy to build and share new functionality for protocols, no matter if you're part of the team or the community!

App screenshot

Level Up Your dApps

Start using Domino in minutes. Use automations created by the others or build your own.

App screenshot