I personally like a dashboard that does everything – there is nothing in my home that I can’t monitor or control from a single dashboard. To make this manageable, I use buttons that open conditional cards containing vertical stacks, along with buttons to control the most frequently used controls. These are fast to load because all they do is change an input_boolean, and then a script fires the action based on the boolean. I have 16 of conditional cards and 30 buttons, along with time and date, in 1500 lines of code. It is my understanding that HA does not load the conditional pages immediately, but waits for them to be opened. I confirmed this by creating a dashboard without the conditionals and it loaded 0.03 seconds faster (I get a Largest Contentful Paint in about 1.3 seconds, which fell to ~1.27 when I removed the conditionals, which is so little difference that it must be just loading the code itself, not rendering anything). I also made a dashboard with the time and date and 12 buttons and nothing else, and it still took ~1 second to LCP, so I make it that the time cost of “do everything” vs “do very little” from the dashboard is 0.3 seconds, a cost I’m happy to pay.
On mobile, it takes about 3 seconds for the page to be responsive with a WiFi 5 connection. This is long enough to be annoying on occasion when you want to do something fast, like click skip on the opening credits or shut the garage door.
I use an android phone and give HA permission to run in the background, but it still reloads when I open it even if I used it five minutes previously.
I tried replacing all the custom:button-cards with bubble-cards (I used Gemini to do rewrite the code, which was itself kind of amazing) but that actually loaded about 0.1 second slower, at least using the LCP metric.
Is there any method of keeping HA running on a phone to minimize the delay to action? Any tricks to fast loading that I have missed?
I did look at the integration starting times and many are very long (the vantage integration the controls my lights takes 13 seconds) but they don’t appear to affect dashboard loading times.
In the screenshot, the lighter background cards open conditionals, while the others are either action buttons or reveal a state, like the oven temperature.
