[Bug] Slow Loading When Page Is Specified in Navigation Component

I'm encountering an unusual behavior with the Navigation component in Retool.

If you use the Navigation component to link to another app without selecting a specific page, the navigation is instant.
However, if you specify a page in the Navigation settings, there's always a 2–3 second loading delay before the target app opens.

Steps to reproduce:

  1. Create a Navigation button linking to another app without selecting a page β€” observe that it loads immediately.
  2. Create another Navigation button linking to the same app but with a specific page selected β€” you'll see a 2–3 second delay.

This happens consistently and seems like an unintended performance issue.

@Oleksandr_Dovgopol,
I'm not able to reproduce this 2-3 second loading delay when a page is specified in the Navigation link. You are on Retool Cloud, right? What browser are you using? Also, does this happen across all browsers for you?

Is this still an issue for you, @Oleksandr_Dovgopol? I'd be interested in taking a closer look, if so!

Hi Darren,

Yes, the issue still persists.

I’ve recorded a video to demonstrate it in detail.

As shown in the video, there’s a noticeable delay between when I click and when the page actually starts reloading. However, after I removed a specific page link from my header module in the second part of the video, the reload became almost instant.

I can consistently reproduce this behavior across all my apps: whenever there’s a specific page link, the delay appears (in tables, keyValues etc)

One more observation related to performance:
I have two Retool spaces β€” one with around 7,000 users and another with just 10. The second one works significantly faster with similar apps. And the second one doesn't have such a delay with page link. Here is another topic with details.

Could this performance issue be related to the number of users?

Got it - thanks for that additional detail and screen capture, as well. :+1:

While digging into this, one of the things I noticed is the fact that lookupPagebyUuid consistently triggers twice when navigating to a specific page, whereas it only triggers once when navigating to the default home page. That alone could explain some of the delay that you're seeing. :thinking:

Your theory about the number of users is a good one, but might be a separate issue. The api/user request runs on page load, but not when navigating to another app via nav link. I can reach out to some other folks internally to see if they have any additional thoughts or ideas, though!

I saw that you reported a noticeable improvement in the performance of the api/user endpoint. Out of curiosity, do you see the same improvement here?