# Create a Leaderboard from User-Specific Data

**URL:** <https://community.glideapps.com/t/create-a-leaderboard-from-user-specific-data/25184>\
**Category:** Ask for Help\
**Created:** [April 6, 2021, 5:28am UTC](https://community.glideapps.com/t/create-a-leaderboard-from-user-specific-data/25184 "2021-04-06T05:28:24Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![Clifton\_Crouch](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/clifton_crouch/32/24428_2.png) [@Clifton\_Crouch](https://community.glideapps.com/u/Clifton_Crouch)\
**Post date:** [April 6, 2021, 5:28am UTC](https://community.glideapps.com/t/create-a-leaderboard-from-user-specific-data/25184/1 "2021-04-06T05:28:24Z")

</div>

Hi, I’m trying to create a leaderboard for a workout tracking app I’ve created.

Each user records their own data to track their progress for each workout type using user-specific columns. Is there a way to take the user-specific values and insert them into the corresponding user’s profile?

Or is there a different way to create a leaderboard with this type of setup?

---

<div class="post-metadata">

**Author:** ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)\
**Post date:** [April 6, 2021, 6:11am UTC](https://community.glideapps.com/t/create-a-leaderboard-from-user-specific-data/25184/2 "2021-04-06T06:11:34Z")

</div>

Presumably you have an action that sets the User Specific Values. If you create a single relation between the table you’re working with and your User Profiles table, then that same action could also set a corresponding value in the User Profile.

The below demonstrates a technique for “rolling up” User Specific columns. It might give you some ideas.

> [@Global Announcements with User Tracking (copyable)](https://community.glideapps.com/t/global-announcements-with-user-tracking-copyable/23422):
>
> This was inspired by a [recent tutorial](https://community.glideapps.com/t/allow-users-to-acknowledge-a-global-alert-on-every-post-with-one-click/23072) by @Robert_Petitto (who else? rofl) For an app I am currently working on, there is a requirement to support Global Announcements. The basic requirements are: An Administrator can create an announcement and target it at a specific group of users When a user opens the app, any new announcements will be front and centre on their dashboard The user can view the announcement and mark it as read Administrators can track how many users have read each announce…

---

<div class="post-metadata">

**Author:** ![Clifton\_Crouch](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/clifton_crouch/32/24428_2.png) [@Clifton\_Crouch](https://community.glideapps.com/u/Clifton_Crouch)\
**Post date:** [April 6, 2021, 7:36pm UTC](https://community.glideapps.com/t/create-a-leaderboard-from-user-specific-data/25184/4 "2021-04-06T19:36:12Z")

</div>

Okay, so I think I figured it out with the help of another friend. I created another user-specific column to capture the user email address upon the submission of the action. Then I made a relation based upon the email address and then did a rollup to calculate the total points.

---

<div class="post-metadata">

**Author:** ![Clifton\_Crouch](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/clifton_crouch/32/24428_2.png) [@Clifton\_Crouch](https://community.glideapps.com/u/Clifton_Crouch)\
**Post date:** [April 6, 2021, 7:53pm UTC](https://community.glideapps.com/t/create-a-leaderboard-from-user-specific-data/25184/5 "2021-04-06T19:53:28Z")

</div>

I’ve run into one more issue… I was able to capture the email address for one table because it uses a button with an action. However, on the other table, it’s a boolean value that’s updated by using a checklist. It stores “true” or “false” in a user specific column. Is there any way to capture something like the user email when they are just checking a box on a checklist? Or would I need to change those to buttons and is there any clean way to display that similar to a checklist?

Also, once I’ve calculated the total points for each user, I’m having trouble using the user-specific points to sort the inline list in descending order. It appears to only be “seeing” the current user’s point total. My current workaround is to have a button below the leaderboard that says “Update My Position”. It has an action linked to it that writes the user-specific point total to a generic column in the user tab for total points. I’m able to sort the inline list by that column.

---

<div class="post-metadata">

**Author:** ![ThinhDinh](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/thinhdinh/32/49_2.png) [@ThinhDinh](https://community.glideapps.com/u/ThinhDinh)\
**Post date:** [April 6, 2021, 11:24pm UTC](https://community.glideapps.com/t/create-a-leaderboard-from-user-specific-data/25184/6 "2021-04-06T23:24:45Z")

</div>

> [@Clifton\_Crouch](#):
>
> Is there any way to capture something like the user email when they are just checking a box on a checklist? Or would I need to change those to buttons and is there any clean way to display that similar to a checklist?

Probably you can display a check/uncheck emoji depends on the state of the boolean column.

If not true display ⬜, if true display ✅.

---

<div class="post-metadata">

**Author:** ![Jeff\_Hager](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/jeff_hager/32/43_2.png) [@Jeff\_Hager](https://community.glideapps.com/u/Jeff_Hager)\
**Post date:** [April 11, 2021, 7:34pm UTC](https://community.glideapps.com/t/create-a-leaderboard-from-user-specific-data/25184/7 "2021-04-11T19:34:28Z")

</div>

Just to add to @ThinhDinh’s comment. You can see what I did here.

> [@Reset Multiple Rows At Once](https://community.glideapps.com/t/reset-multiple-rows-at-once/22211):
>
> There have been several requests for people to find a way to clear a value in multiple rows. I was thinking about that and came up with a quick example of a way to handle that. Instead of trying to clear a value in an entire column, I realized we could just change one value on a parent column, load it as a single value in our sheet and then compare that parent value to a column that we set or unset for each row. It’s not about clearing an entire column, it’s about making a value in each row n…
