# Syncing Tally Form Responses with Glide Without Glide Premium

**URL:** <https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805>\
**Category:** Ask for Help\
**Created:** [May 9, 2025, 10:44pm UTC](https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805 "2025-05-09T22:44:50Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Mariam\_Benaim](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/mariam_benaim/32/87353_2.png) [@Mariam\_Benaim](https://community.glideapps.com/u/Mariam_Benaim)\
**Post date:** [May 9, 2025, 10:44pm UTC](https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805/1 "2025-05-09T22:44:50Z")

</div>

Dear Glide Community,

I hope you’re doing well.

I’m currently building an educational app using Glide that recommends books based on the user’s English level. Since Glide doesn’t support native quiz logic easily, I created the test using Tally (30 questions, 3 levels). My goal is to sync user responses from the Tally form (stored in Google Sheets) into Glide, so I can use their score to recommend a suitable book.

The issue I’m facing is that Glide doesn’t automatically sync the new Tally response data into the app unless I have a Premium subscription. Is there any way to make this sync happen without upgrading to Glide Premium?

I’ve already tried manual refresh and some automation tools, but I want to know if there’s a workaround or method that allows new form responses to appear in my Glide Data without paying for Premium.

Any guidance or suggestions would be highly appreciated!

Best regards,  
Mariam

---

<div class="post-metadata">

**Author:** ![HTML](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/html/32/87893_2.png) [@HTML](https://community.glideapps.com/u/HTML)\
**Post date:** [May 9, 2025, 10:47pm UTC](https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805/2 "2025-05-09T22:47:32Z")

</div>

Yes, you can fetch data from a Google Sheet almost instantly using a JavaScript column, or you can recreate the logic from the Google Sheet and apply it directly in the Glide table.

---

<div class="post-metadata">

**Author:** ![Mariam\_Benaim](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/mariam_benaim/32/87353_2.png) [@Mariam\_Benaim](https://community.glideapps.com/u/Mariam_Benaim)\
**Post date:** [May 10, 2025, 12:18am UTC](https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805/3 "2025-05-10T00:18:54Z")

</div>

can JAVAscript Get the score from Tally into Glide ? because the test is taken inside Tally , once the test is done , the user goes back to glide , i want the perfect book recommendation to show in that screen based on the user score .  
i would be so grateful if you could explain to me how i could make this idea work

---

<div class="post-metadata">

**Author:** ![HTML](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/html/32/87893_2.png) [@HTML](https://community.glideapps.com/u/HTML)\
**Post date:** [May 10, 2025, 12:25am UTC](https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805/4 "2025-05-10T00:25:40Z")

</div>

Can you explain what you mean by “the test is taken inside Tally”? And how are you retrieving that score?

---

<div class="post-metadata">

**Author:** ![Nicolas\_Joseph](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/nicolas_joseph/32/76105_2.png) [@Nicolas\_Joseph](https://community.glideapps.com/u/Nicolas_Joseph)\
**Post date:** [May 10, 2025, 1:09am UTC](https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805/5 "2025-05-10T01:09:44Z")

</div>

Hi @Mariam_Benaim 🙂

> [@Mariam\_Benaim](#):
>
> Since Glide doesn’t support native quiz logic easily

If you are on a Free plan, your best option might be to create the quiz in Glide 😅  
You won’t have any sync. issue then.

What kind of questions are you using in your Tally form (short answer, long answer, checkboxes…)? How do you define the score (it is something like +1 for a good answer for instance)?

---

<div class="post-metadata">

**Author:** ![Mariam\_Benaim](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/mariam_benaim/32/87353_2.png) [@Mariam\_Benaim](https://community.glideapps.com/u/Mariam_Benaim)\
**Post date:** [May 10, 2025, 1:19am UTC](https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805/6 "2025-05-10T01:19:52Z")

</div>

Thank you so much for your reply.  
Yes, I’m currently using the free plan. In Tally, my quiz has 30 multiple choice questions—each question has 4 options, and only one is correct. The score is calculated by giving +1 for each correct answer, so the total score is out of 30.  
My challenge is: I want to calculate the score based on the user’s answers and sync that score to my Glide table so I can suggest a book based on their level.

Do you think I could achieve this using JavaScript or any workaround, even on the free plan?

Thanks again for your time and help!

---

<div class="post-metadata">

**Author:** ![Mariam\_Benaim](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/mariam_benaim/32/87353_2.png) [@Mariam\_Benaim](https://community.glideapps.com/u/Mariam_Benaim)\
**Post date:** [May 10, 2025, 1:22am UTC](https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805/7 "2025-05-10T01:22:28Z")

</div>

By “the test is taken inside Tally,” I mean that I built a quiz using Tally Forms. Users open the Tally form from my Glide app, answer the questions there (multiple choice), and submit their answers.

Tally then saves the responses to a connected Google Sheet. I calculate the score in that sheet based on correct answers (+1 for each). What I’m struggling with is how to make that score appear in Glide, so I can show users their result and recommend a book based on it.

I’m currently using the free plan on Glide, so I can’t use the API or premium integrations.  
Any advice on how I can sync the score from the Google Sheet into Glide in real time?  
Thanks again!

---

<div class="post-metadata">

**Author:** ![HTML](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/html/32/87893_2.png) [@HTML](https://community.glideapps.com/u/HTML)\
**Post date:** [May 10, 2025, 1:26am UTC](https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805/8 "2025-05-10T01:26:34Z")

</div>

You can create your own API connection using a JavaScript column on any plan, including the free plan. However, as both Marim and I mentioned, you can also replicate that quiz directly inside Glide and have a full control of the whole process.  
Is there any specific reason you need to use Tally Forms?

---

<div class="post-metadata">

**Author:** ![Nicolas\_Joseph](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/nicolas_joseph/32/76105_2.png) [@Nicolas\_Joseph](https://community.glideapps.com/u/Nicolas_Joseph)\
**Post date:** [May 10, 2025, 3:55am UTC](https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805/9 "2025-05-10T03:55:35Z")

</div>

To help you understand how to build this kind of quiz in Glide, here’s a quick tutorial. 👇  
  
  
In **Data** :

1. Create a **`Questions`** table:

  

1. Add some columns in the **`Users`** table:

  

1. Lastly (for Data part), create a **`Helper for answers`** table:

  

In **Layout** :

1. Create a new screen using `Users` as Source
2. Add the following components:
  - _Button_. We’ll use it to Lauch the quiz.
  - _Choice_. To provide a selector to users
  - _Button_. To Validate the answer
  - _Text_. Useful to display the score at the end
  - _Button_. In order to trigger what will happen at the end (show the recomended book for instance)

And here are the configurations of these components:

1. The first _Button_ action is _Set column values_ configured like this:  

2. The _Choice_ component visibility is the following (note that you’ll have to choose 31 if you have 30 questions instead of 3… I only have 2 questions here):  

3. The second _Button_ has the same visilibty conditions as the _Choice_ component (they are also displayer together, you might want to use a Container to apply visilibty once…).  
And the related action is a **Workflow** :  

4. _Text_ component will only be visible when `Question index` is over the number of questions (3 in my case, 31 in yours):  

5. Last _Button_ has the same visibility parameters as the _Text_ component. Here I’ve choosen to reset the quiz by using an action to _Set column values_ back to their initial state, but it’s now the time for you to define the next steps (is it possible to take the quiz again? It is available after some time? something else?). For the purpose of this tutorial, here is my configuration:  

  

If we have both done our jobs correctly (you by following the steps and me for not having forgotten anything 😛 ), you can now play with an amazing form, all build in Glide, with a Score and User data available for you to provide the best book recommandation 😉

  

**Result**  
 ![Quiz in Glide](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/1/9/19cf2b4a14690b3dd82b6ee6b9ec0af7050093b5.gif)

  

Hopefully, it’ll be useful! 🙂

---

<div class="post-metadata">

**Author:** ![Eric\_Penn](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/eric_penn/32/73888_2.png) [@Eric\_Penn](https://community.glideapps.com/u/Eric_Penn)\
**Post date:** [May 10, 2025, 8:05pm UTC](https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805/11 "2025-05-10T20:05:59Z")

</div>

> [@Nicolas\_Joseph](#):
>
> **Result**
> 
> ![Quiz in Glide](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/1/9/19cf2b4a14690b3dd82b6ee6b9ec0af7050093b5.gif)

May I know what program you used for the screen recording? Great tutorial.

---

<div class="post-metadata">

**Author:** ![Mariam\_Benaim](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/mariam_benaim/32/87353_2.png) [@Mariam\_Benaim](https://community.glideapps.com/u/Mariam_Benaim)\
**Post date:** [May 10, 2025, 11:11pm UTC](https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805/12 "2025-05-10T23:11:06Z")

</div>

hi again , I wanted to thank you so much for your help — I followed your advice, and I was finally able to build the test directly inside Glide. Everything is working great now!

I’m currently working on the final step: **showing book recommendations after the test**.  
The idea is that after the user finishes the quiz, they click a “See Recommendation” button, and based on their score or level, the app shows a book cover and title that match.  
I’m just unsure how to:

- Automatically assign a level based on the user’s score
- Display the recommended book with its image

Do you have any suggestions for how I could do that inside Glide?  
Thanks again for everything — your help has made a huge difference

---

<div class="post-metadata">

**Author:** ![Nicolas\_Joseph](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/nicolas_joseph/32/76105_2.png) [@Nicolas\_Joseph](https://community.glideapps.com/u/Nicolas_Joseph)\
**Post date:** [May 11, 2025, 12:47am UTC](https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805/13 "2025-05-11T00:47:14Z")

</div>

> [@Eric\_Penn](#):
>
> what program you used for the screen recording

Sure @Eric_Penn: it’s **ShareX** , a free and open source screen capture tool.  
Available for Windows at [https://getsharex.com/](https://getsharex.com/)

And I just add I do not have any commercial interest in it 😃

---

<div class="post-metadata">

**Author:** ![Nicolas\_Joseph](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/nicolas_joseph/32/76105_2.png) [@Nicolas\_Joseph](https://community.glideapps.com/u/Nicolas_Joseph)\
**Post date:** [May 11, 2025, 2:17am UTC](https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805/14 "2025-05-11T02:17:57Z")

</div>

Well done @Mariam_Benaim 🥳

Two differents topics, so we’ll start with the most obvious one to me.

1️⃣ **Displaying the recommended book**  
At the end of the quiz, the User profile row will contain a value in `Score` column which we’ll use to determine the most suitable book. While you could use a _Relation_ column to associate each specific score with a book it’ s more common to recommended a book based on a score range, such as:

- 0 to 5 → book A
- 6 to 10 → book B
- 11 and above → book C

Let’s start by adding a new **`Books`** table to store data about… books.  
Add some columns:

- `Row ID` (Row ID), often a good practice to use unique identifiers
- `Book title` (Text)
- `Book author` (Text)
- `Book cover` (Image). It will let you upload them from your computer or an URL (I used Wikipedia here)
- `Min score` (Number). This will be the minimum `Score` value to obtain to have this book listed. It will works in combination with:
- `Max score` (Number). To define the upper band of our range

In my scenario, I’ve added 3 books, and some ranges are overlaping each others: if your score is 1, books available will be _Harry Potter_ and _The Lord of the Rings_.  
That’s just for demonstration purpose, to showcase you the possibility to make multiple recommandations if you prefer.

 ![Books](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/8/5/8571462a1ff59dbf1dcc5858c6849d3ecef3aa67.png)

  

Now you just need to create a link between the score from `Users` table and this list of books. In the `Users` table, let’s add:

- `Book recommandations` (Query). The _Source_ will be `Books` and you want to apply conditions based on the `Score` so we add _Filter by_ → Min score is less or equal to User profile \> Score And Max score is greater or equal to User profile \> Score.

  

Now, in the **Layout** , we’ll add a new _Collection_ component.  
I’ve choosen _Card_ because I think it’s relevant in this use case. Feel free to try other styles (_List_ or _Table_ probably) or other ways to customize your collection. Mine looks like this:

 ![Card collection](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/5/f/5f2bd568f250e8a43b6c83af2d194e94e8e70c48.jpeg)

Note the _Source_ is `User profile > Book recommandations`. If you have only 1 book (because the range Min → Max contains only 1 book), it works. With more than 1, it’s fine too and it’s not more complicated if you want to explore this path 😉

To finish the job, I remove the Search bar and disabled Actions. However, it’s up to you to define what will happen if the User click on the book. You could imagine so many things here (a new screen with more information about the book such as a summary, the count of pages; a link to buy the book on your favorite platform; a link to download the book from Wikibooks or somewhere else…).

  

You have one final step: changing the behaviour of the Show me the recommended book _Button_.. For now, it’s launching the quiz again and reseting values of the User profile.  
One easy option is to change the _Set column values_ action to _Increment number_ of the `Question index` column.

 ![Increment number](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/c/8/c8cf3bf8abfe99b80142091c581df87bc3360db4.png)

Of course, we need to add a Visibility condition to our _Collection_, in order to display it when the `Question index` is 4 (or… 32 for you). The user will go through:

- each questions from 1 to 30
- when `Question index` will be incremented to 31, it will display the “result screen” (with the text and the Show me… button)
- and lastly, the recommended book(s) will be shown at index 32 🙂

At this point, the quiz is over and the User has no way to pass it again. But you now know how to add a button to reset the quiz, so I let you find out what the behaviour you want to implement (quiz is over forever or a button to reset it… or something else).

**Result**  
 ![Quiz](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/0/8/08a8544b3c7246acc75fcca2e43756e60022f4ce.gif)

  

2️⃣ **Assigning a level**  
This one is a bit more complex, as I’m not sure how you define a “level” or what th goal is behind having this information. That said, here are a few insights:

- you can use _If → Then → Else_ column to assign a value (Beginner, Intermediate, Advanced…) based on a value such as `Score`. However, since the value updated each time the `Score` changes, it might not be ideal if the user can retake the quiz.
- you can use a _Set column values_ (as we’ve done several times now) to “copy” the final quiz score into another column. This way, the value becomes independant of the `Score` column and remains static.
- as we saw in the Book recommandation section, you can also use a _Relation_ or a _Query_ to define levels based on conditions, instead of relying on an _If → Then → Else_ column.

Ultimately, the technical approach depends on the logic you want to implement.  
Some advanced users have been built full gamification systems with ranking and complex logic. Here’s an example from Robert Petitto, if you’re interested: [https://www.youtube.com/watch?v=GqfOJdS52a0&list=PLiXRc87c6KKXcnnsS3ZKmyLyqiSFjuuNv](https://www.youtube.com/watch?v=GqfOJdS52a0&list=PLiXRc87c6KKXcnnsS3ZKmyLyqiSFjuuNv)

  

I hope it will be helpful 🙂

---

<div class="post-metadata">

**Author:** ![Mariam\_Benaim](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/mariam_benaim/32/87353_2.png) [@Mariam\_Benaim](https://community.glideapps.com/u/Mariam_Benaim)\
**Post date:** [May 12, 2025, 12:24am UTC](https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805/15 "2025-05-12T00:24:11Z")

</div>

I just wanted to thank you again for all the help you’ve provided with my app. it is a very important class project and I’ve been struggling with it for weeks, and honestly, I couldn’t have made it this far without your support. It’s really made a difference, and I truly appreciate it ❤

The quiz with the score and recommendations is working perfectly now, thanks to you!

If you have a moment, I’d really appreciate some quick guidance on the last button in the recommendations page. I want it to navigate users back to where we have the first button (the one with the start the quiz). Any tips would be much appreciated!

Thanks again for your time and help 😊

---

<div class="post-metadata">

**Author:** ![Nicolas\_Joseph](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/nicolas_joseph/32/76105_2.png) [@Nicolas\_Joseph](https://community.glideapps.com/u/Nicolas_Joseph)\
**Post date:** [May 12, 2025, 10:14am UTC](https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805/16 "2025-05-12T10:14:20Z")

</div>

With this setup, the first button is only affected by visibility conditions, so no other page is opened when the quiz starts 🤔

Generally speaking, here are some of the possible options.

 ![Interaction](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/1/d/1d2a40d762249a9aa32fb4b4a41141e216256dcf.png)

It really depends on what happened _before_. For instance, if you chose to create a _Custom screen_ with an _Overlay_ target for the quiz, a button with the action _Close overlay_ at the end makes sense.

---

<div class="post-metadata">

**Author:** ![Mariam\_Benaim](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/mariam_benaim/32/87353_2.png) [@Mariam\_Benaim](https://community.glideapps.com/u/Mariam_Benaim)\
**Post date:** [May 12, 2025, 11:52pm UTC](https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805/17 "2025-05-12T23:52:05Z")

</div>

Hey again! ☹  
Thank you so much for your patience with me — I really appreciate it! I hope this will be the last issue I need to share with you. The good news is that the app is working perfectly fine with my Gmail. The issue is that when other Gmail accounts try to sign in, the app only shows two screens (Home and Genre), and the Test screen doesn’t show up.

Do you have any ideas on what might be causing this? Thanks again for your help!

---

<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:** [May 13, 2025, 12:06am UTC](https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805/18 "2025-05-13T00:06:51Z")

</div>

What visibility conditions are you applying on those tabs?

---

<div class="post-metadata">

**Author:** ![Mariam\_Benaim](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/mariam_benaim/32/87353_2.png) [@Mariam\_Benaim](https://community.glideapps.com/u/Mariam_Benaim)\
**Post date:** [May 13, 2025, 2:57pm UTC](https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805/19 "2025-05-13T14:57:26Z")

</div>

i dont have any visibility condition in the tabs , i have it on the components but not in the tabs

---

<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:** [May 13, 2025, 3:07pm UTC](https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805/20 "2025-05-13T15:07:17Z")

</div>

Can you share screenshots of what you see compared to what others see?

---

<div class="post-metadata">

**Author:** ![Mariam\_Benaim](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/mariam_benaim/32/87353_2.png) [@Mariam\_Benaim](https://community.glideapps.com/u/Mariam_Benaim)\
**Post date:** [May 13, 2025, 3:49pm UTC](https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805/21 "2025-05-13T15:49:55Z")

</div>

![Screenshot_20250513-162941](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/7/4/74b6fbcaf3eca7bc8c1d401839a973fb448365bc.png)  
 ![IMG-20250513-WA0028](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/8/b/8b971b6971246001b18a8e59b0cfcac35d94b0c8.jpeg)

[Next page](https://community.glideapps.com/t/syncing-tally-form-responses-with-glide-without-glide-premium/81805.md?page=2)
