Quote tool for Insurance company

Hello Experts,

Wondered if anyone could help.

I have setup a quote calculator tool for an Insurance Company. However i need live pricing. I have used multiple screens to create a multi step form that show the final results on the last screen and user-specific columns to allow write in temporary values.

This tools formula is quite complex and required loads of factors, so i have an issue where the final result sometimes lags or delay to final result.

I have tried wait, loop back and even broke down the formula to multiple intermediate columns but i still get the lag sometimes on final result requiring user to refresh the web page to get an updated result.

Please can any suggestions would be appreciated as i suspect i have hit a limitation with Glide re-syncing and re-calculating

Welcome to Glide’s community forum.

You are using a Math column and it’s lagging? Could you tell us a little bit more about your setup:

  1. What is the formula?
  2. Where are you getting the data from?
  3. Is the data spread across different tables?
  4. What’s the data source: Google Sheets or Airtable?

Sharing a video or screenshots might be helpful.

1 Like

Hi Thanks for the response.

Formula;

((((AgeFactor*((OutpatientCoverFactor+AlternativeTherapies+Mental)+1)+(PrivateDentalOptical))*HospitalFactor)*Childrenfactor)*Whoneedscover)*VoluntaryFactor

Data Source;
Glide Table

One table

using user specific columns on the same table to write in temporary data to get live quotes

I have even broken down the formula above to this;

  • Step1 = AgeFactor * ((OutpatientCoverFactor + AlternativeTherapies + Mental) + 1)
  • Step2 = Step1 + PrivateDentalOptical
  • Step3 = Step2 * HospitalFactor
  • Step4 = Step3 * ChildrenFactor
  • Step5 = Step4 * Whoneedscover
  • FinalQuote = Step5 * VoluntaryFactor

and still get delays in final results.

Is my formula too complex for glide(having computed columns, if-else conditions and maths columns combined)

How are you getting the correct factors?

I would consider a separate single row table for your form. You may have calcutions happening on all rows in your factor table since you are also using it to store your user specific data, even though only the first row is doing the caclulating.

Your calculation doesn’t seem all that complex so that shouldn’t be the issue. I think the bigger issue might be getting the correct factors, but I imagine that’s happening in real time as the form is being fill out, and shouldn’t be to bad.

I think a little more detail on how the form is set up would help, but if I’m assuming correctly, I would separate columns used for the form and the columns used for the factors into separate tables.

1 Like

Hello,

Factors all have various if-else condition and are based on user inputs in the user specific columns. At the moment both form values and loading factors are in the same table to give a final premium result all in one row same table

If i separate the table, wouldn’t that add another layer of complexity as there will be two tables trying to run concurrently giving live results ?

I think I need some clarification on your setup before I can answer that. Generally no, it would greatly simplify things. But maybe I’m misunderstanding something.

To be clear, I assume your factor table has several rows of factor data, correct? You are in fact storing the factors in the table as opposed to pulling from an API? Are you performing calculations on hundreds or thousands of rows? Again, it would be helpful to see how your form is set up, what the tables look like, and how those factors get pulled into your final calculation.


here’s a screenshot of some factors

No API all calculation done one table one row

Ah ok, so the factors are determined by the IF statements and it’s not a table of numbers, so no relation or query columns involved correct? I think I misunderstood that part.

You have a lot going on there, but since it’s a single row, I would think it would run relatively quickly, especially since it should be calculating each section as you are filling out the form.

So what exactly happens when you get to that last screen? Does it hang? Does it bring up the final screen but it takes a while for the final calculation to show up? Could you provide a video showing what’s happening? Maybe to debug, you could add a handful of IF column and math column values to the screen to see if those show up promptly. You could also show the data preview at the bottom of the layout screen while filling out the form to monitor what’s happening.

2 Likes

Exactly, just IF statements and Math columns combined in a single row.

Issue is after getting some live quotes by selecting various factors, the final results starts to lag and give previous results then corrects itself after few seconds up to minutes or unless you force refresh your web page

CleanShot 2025-05-10 at 07.51.46

I would suggest trying to use this to see which columns take the most time to calculate and optimize based on that.

2 Likes

Hello @Chrvs97 and Community :slight_smile:

Here are a few ideas, though their relevance still needs to be assessed, as I haven’t actually implemented them in such a context.


:one: Data staging
Wouldn’t it make sense to perform some data staging after each step of the form?
I’m not fully familiar with how Glide works under the hood, but in other tools I’ve used, when calculations depend on previous steps that themselves involve other calculations, it often triggers a chain of cascading recalculations.

So even though the formula has been broken down, it doesn’t have any real impact on the final calculations. In fact, from a computational perspective, it could even be considered worse, since it introduces additional unnecessary calculations.

You could, for instance, store the result of the Step1 in a column called Step1 - staging (with a Set Column Values action) and reset entered values (with ou without storing them in a JSON to make sure you can retrieve them afterward). Step5 would then be calculated without calling previous calculations over and over again.


:two: Improve If → Then → Else columns
Typically, the computer — or here, the browser — evaluates each condition sequentially until one meets the required criteria. Some of your ITE columns could probably be reordered so that the conditions most likely to be true appear earlier in the list.

You could also add a condition at the very top to handle cases where the user hasn’t entered any value. That way, the system avoids looping through all the other conditions unnecessarily.


I can’t promise it would work better — it’s simply an approach I might have explored in your situation :slight_smile:

4 Likes

Hello again experts!

Thanks for all your suggestions. I have now been able to solve the issue with delay or calculation lag by reducing the formula from

((((AgeFactor * ((OutpatientCoverFactor + AlternativeTherapies + Mental) + 1) + PrivateDentalOptical) * HospitalFactor) * ChildrenFactor) * Whoneedscover) * VoluntaryFactor

to

  • Step1 = AgeFactor * ((OutpatientCoverFactor + AlternativeTherapies + Mental) + 1)
  • Step2 = Step1 + PrivateDentalOptical
  • Step3 = Step2 * HospitalFactor
  • Step4 = Step3 * ChildrenFactor
  • Step5 = Step4 * Whoneedscover
  • FinalQuote = Step5 * VoluntaryFactor

This sped up the final results with less lag and most importantly allowed me to spot where the delay happens and spotted the child factor(IF-ELSE) was the culprit!

I made the child factor(IF-ELSE) more clear and deterministic and all is running smoothly!!

3 Likes