How to Fix Home Assistant Dashboard Not Loading?

If your Home Assistant dashboard is not loading, you are not alone. This is one of the most common frustrations among Home Assistant users, whether they are beginners or experienced smart home enthusiasts. A blank screen, a spinning loader, or an “Error while loading page” message can stop your entire smart home setup in its tracks.

The good news is that most dashboard loading failures have clear, fixable causes. From browser cache issues to corrupted databases, broken custom cards, or a bad update, each problem has a solution. This guide walks you through every major cause and gives you step-by-step fixes you can apply right now.

By the end of this post, you will know exactly what to check, what to fix, and how to prevent the problem from coming back. Keep reading because this is the only guide you need.

In a Nutshell

  • Browser cache is the most common culprit. A stale or corrupted browser cache can stop the Home Assistant dashboard from displaying correctly. Clearing the cache or doing a hard refresh fixes this in many cases.
  • HACS custom cards and third-party resources frequently break dashboards after updates. A single broken JavaScript resource can prevent the entire dashboard from loading, so knowing how to remove or reinstall faulty resources is critical.
  • Configuration errors in your YAML files can stop Home Assistant from starting properly, which directly causes the dashboard to fail to load. Validating your configuration before restarting saves you a lot of headache.
  • A corrupted database (home-assistant_v2.db) is a less obvious but very real cause of dashboard loading failures, especially after an unexpected shutdown or a failed update.
  • Hardware resource limitations, such as insufficient RAM or a failing SD card on a Raspberry Pi, can make your dashboard extremely slow or completely unresponsive.
  • After a Home Assistant update, leftover or incompatible resources and integrations often conflict with the new frontend, causing loading errors. Knowing how to check and clean up after an update keeps your system stable.

Why Is Your Home Assistant Dashboard Not Loading?

Before jumping into fixes, it helps to understand why the dashboard stops loading in the first place. Home Assistant’s dashboard, also called the Lovelace UI, is a web-based frontend that communicates with the Home Assistant backend server. Any disruption between the browser, the server, or the files that build the dashboard can cause a failure.

The loading failure can appear in several ways. You might see a completely blank white screen, a persistent loading spinner, an “Error while loading page dashboard” message, or a dashboard that partially loads but then freezes. Sometimes it only fails on one specific browser or device, and sometimes it fails across all of them.

Identifying which type of failure you are experiencing helps you narrow down the fix faster. A failure on one browser but not another almost always points to a cache or browser-specific problem. A failure across all devices usually points to a server-side issue like a bad configuration, a broken integration, or a database problem. A failure that started right after an update is often caused by an incompatible custom card or a conflicting resource file.

Understanding this basic distinction will save you hours of trial and error. Now, let me take you through each fix, step by step.

Fix 1: Do a Hard Refresh in Your Browser

The very first thing you should do is a hard browser refresh. This is the simplest fix and it works more often than you might expect. A regular refresh (pressing F5) reloads the page but still uses cached files. A hard refresh forces the browser to download all files fresh from the server.

To do a hard refresh on Windows or Linux, press Ctrl + Shift + R or Ctrl + F5. On a Mac, press Command + Shift + R. On mobile Chrome, tap the three-dot menu, then tap the reload icon while holding it down.

If the dashboard loads after a hard refresh, the problem was a stale browser cache, and you are done. If it does not load, you need to go deeper and clear the full browser cache.

To clear the cache in Chrome, press Ctrl + Shift + Delete, select “Cached images and files,” choose “All time” as the time range, and click “Clear data.” In Firefox, press Ctrl + Shift + Delete, check “Cache,” and click “Clear Now.” After clearing, close the browser completely, reopen it, and load your Home Assistant URL again.

If you are using the Home Assistant Companion app on Android or iOS, go to Settings > Companion App > Debugging > Reset Frontend Cache, then refresh the dashboard. This resets the locally stored frontend files in the app and often resolves a blank screen or incomplete dashboard loading in the mobile app.

Fix 2: Restart Home Assistant

A clean restart of Home Assistant resolves a wide range of dashboard loading issues. After the system has been running for a long time, certain processes can get stuck, memory can build up, and the frontend server may become unresponsive. A restart clears all of that and gives everything a fresh start.

To restart Home Assistant, navigate to Settings > System > Restart and click the “Restart” button. Wait about one to three minutes for the system to fully come back online before trying to load the dashboard again. Do not confuse a restart with a shutdown. A restart brings the system back up automatically, while a shutdown requires a manual power-on.

If you cannot access the Settings panel because the dashboard itself is not loading, you can restart via the terminal. If you have the SSH & Web Terminal add-on installed, open it and type the command ha core restart. If you are running Home Assistant on a Raspberry Pi or similar hardware and you have physical access, you can also safely unplug and replug the power after a few seconds.

After the restart, check if the dashboard loads. If it does, make a note of what was running before the restart (new integrations, recent automations, a recent update) because one of those likely caused the temporary failure. A restart is a valid fix, but understanding the root cause prevents the problem from recurring.

Fix 3: Check and Fix Broken HACS Custom Cards

HACS (Home Assistant Community Store) custom cards are one of the most frequent causes of a dashboard not loading. Each custom card is loaded as a JavaScript resource. If even one of those resource files is broken, missing, or incompatible with the current Home Assistant version, the entire dashboard can fail to render.

To check your resources, open any dashboard, click the three-dot menu in the top right corner, and select “Manage Resources.” Look through the list for any resource with a warning icon or a path that points to a file that no longer exists. A common sign of a broken resource is a path like /hacsfiles/custom-card-name/custom-card-name.js that no longer resolves correctly.

The fastest fix is to remove the broken resource from the list. Click the delete icon next to the offending resource, save the change, and then reload the dashboard. If the dashboard now loads, you have confirmed that resource was the problem. You can then reinstall the custom card properly through HACS.

If you recently updated HACS itself, this is especially likely to be the cause. There are known issues where HACS updates remove or break the alias paths used by custom card JavaScript files. The fix recommended by the community is to go into HACS, find the affected cards, and click “Redownload” on each one. This regenerates the file paths and restores the resource links correctly.

If you cannot access the dashboard at all to reach the resource manager, go to your configuration directory, open the www folder, and manually check if the JavaScript files for your custom cards are still present. If they are missing, reinstall those cards via HACS.

Fix 4: Validate Your Configuration Files

A YAML syntax error in your configuration.yaml or any included configuration files can prevent Home Assistant from starting up correctly. When the backend fails to start properly, the dashboard has nothing to connect to and will not load. Validating your configuration before restarting is a habit every Home Assistant user should develop.

Home Assistant provides a built-in configuration check tool. Go to Developer Tools > YAML and click “Check Configuration.” If there are errors, Home Assistant will display them clearly with the file name and line number. Fix each error, then click “Check Configuration” again until you get a success message.

Common YAML errors include incorrect indentation, missing colons, mismatched quotes, and invalid entity IDs. YAML is very strict about indentation. Make sure you use spaces and not tabs. Each nested level should be indented by exactly two spaces. A single misplaced character can make the entire file invalid.

If you cannot access Developer Tools because the dashboard is down, you can validate the configuration via the terminal. Use the SSH add-on and run the command ha core check. This checks your configuration files without needing the frontend to be running.

After you fix the YAML errors, go to Settings > System > Restart and restart Home Assistant. Then attempt to load the dashboard again. If it loads, the YAML error was the root cause.

Fix 5: Fix the Corrupted Database

Home Assistant stores all its historical data in an SQLite database called home-assistant_v2.db. This database can become corrupted after an unexpected power loss, a failed update, or a hardware failure. A corrupted database can cause the dashboard to hang on loading, especially the Energy and History dashboards, or it can cause the whole frontend to become unresponsive.

Signs of a corrupted database include very slow dashboard loading, errors in the logs mentioning “disk I/O error” or “database is locked,” and a Recorder integration that appears stuck.

The simplest fix is to delete the corrupted database and let Home Assistant create a new, clean one. You will lose your historical data, but your dashboard configuration and automations will be unaffected. To do this, connect to your Home Assistant file system via the Samba share or SSH. Navigate to the /config directory and find the file home-assistant_v2.db. Rename it to home-assistant_v2.db.bak (as a backup), then restart Home Assistant. The system will create a fresh database automatically.

If you want to try repairing the database instead of replacing it, connect via SSH and run sqlite3 home-assistant_v2.db "PRAGMA integrity_check;". If this returns errors, run sqlite3 home-assistant_v2.db ".recover" | sqlite3 home-assistant_v2_new.db to create a repaired copy, then swap the files.

To prevent future corruption, consider moving your database to a USB drive or an SSD if you are running Home Assistant on a Raspberry Pi with an SD card. SD cards are particularly prone to corruption because of their limited write endurance.

Fix 6: Check Your Home Assistant Logs for Errors

The Home Assistant log is the single best tool for diagnosing a dashboard loading problem. When the dashboard fails to load, the log almost always contains an entry explaining exactly why. Checking it should be one of your first steps after a hard refresh and restart fail to fix the issue.

To access the logs, go to Settings > System > Logs. Look for any red ERROR or orange WARNING entries that appeared around the time the dashboard stopped loading. Common error messages you might see include “Custom element doesn’t exist,” “Error loading resource,” “Unable to connect to Home Assistant,” or “Recorder not started.”

If the logs mention a specific integration or custom component by name, that is your problem. Disabling that integration by commenting out its entry in configuration.yaml (add a # at the start of the relevant lines) and then restarting Home Assistant is a quick way to confirm whether that integration is the cause.

For more detailed error information, you can also open your browser’s developer tools by pressing F12, then click the “Console” tab. Any JavaScript errors that are preventing the dashboard from rendering will appear here in red. This is particularly useful for diagnosing broken custom cards because the console will name the specific resource file that failed to load.

Make it a regular habit to check your logs after every Home Assistant update or after adding a new integration. Catching errors early prevents them from building up into a major dashboard failure.

Fix 7: Disable or Remove Conflicting Integrations

Certain integrations can become unstable after a Home Assistant update and block the frontend from loading correctly. This is especially true for older custom integrations that have not been updated to match the current Home Assistant API. A single misbehaving integration can hold up the entire startup process, which in turn prevents the dashboard from becoming available.

To identify a problematic integration, review your error logs as described in the previous section. If a specific integration is named, go to Settings > Devices & Services, find that integration, and click “Disable.” Then restart Home Assistant and check if the dashboard loads.

If you cannot identify a specific integration from the logs, try the process of elimination. Disable all non-essential custom integrations one at a time, restarting Home Assistant after each one, until you find the one that is causing the problem. Start with integrations that were recently added or recently updated.

Custom integrations installed outside of HACS are especially risky. These are stored in the /config/custom_components directory. If you suspect one of them is the issue, rename its folder (for example, my_integration to my_integration_disabled) so that Home Assistant ignores it on the next startup. Restart and check the dashboard.

Once you identify the bad integration, check its GitHub page for recent issue reports. Often, other users have already found the fix and posted it. You may simply need to update the integration to a newer version that is compatible with your current Home Assistant release.

Fix 8: Rebuild or Recreate the Dashboard

Sometimes the dashboard configuration file itself becomes corrupted or contains invalid entries that prevent the entire dashboard from rendering. This can happen after a failed edit in the UI editor, a bad YAML paste in the raw editor, or a partial file write during an unexpected shutdown.

If you are using UI-managed dashboards, go to Settings > Dashboards, delete the problem dashboard, and create a new one. Your widgets and card configurations will be lost, but the dashboard will load cleanly. If you had a complex dashboard setup, consider this an opportunity to rebuild it more efficiently.

If you are using YAML-mode dashboards, open your ui-lovelace.yaml or the relevant dashboard YAML file in a text editor. Look for any syntax errors, invalid card types, or references to custom cards that no longer exist. Even a small error in the YAML structure can cause the entire dashboard to fail.

Use an online YAML validator to paste your dashboard configuration and check for errors. Tools like YAML Lint (yamlint.com) will highlight exactly which line is causing the problem. Fix the error, save the file, and reload your Lovelace configuration by going to Developer Tools > YAML > Reload Lovelace without needing a full restart.

If all else fails, rename your dashboard YAML file to something like ui-lovelace.yaml.bak and let Home Assistant generate a new default one. This will restore a working default dashboard while you fix the original file separately.

Fix 9: Fix Slow or Unresponsive Dashboard Due to Resource Overload

If your Home Assistant dashboard loads but takes an extremely long time, or if it loads partially and then freezes, the problem may be hardware resource limitations rather than a software error. This is particularly common on Raspberry Pi hardware, especially models with limited RAM.

Check your system resources by going to Settings > System > Hardware. Look at the CPU usage and available memory. If your CPU is consistently above 80% or your RAM usage is above 90%, your hardware is under too much pressure to serve the frontend smoothly.

Several things can contribute to resource overload. A very large number of entities, complex history graphs, or a large recorder database can all slow down the dashboard significantly. Limiting the recorder’s history retention is one of the most effective fixes. In your configuration.yaml, add or edit the recorder configuration to reduce the purge_keep_days value to 7 or 10 days instead of the default 10. Also consider excluding high-frequency entities from recording.

Another common cause of slowness is a very large number of custom cards on a single dashboard view. Each custom card loads a separate JavaScript file. Having 15 or 20 custom cards on a single view adds up quickly. Splitting your dashboard into multiple views with fewer cards each greatly reduces the load time per page.

If you are running Home Assistant on a Raspberry Pi 3 or earlier with only 1 GB of RAM, consider upgrading your hardware. A Raspberry Pi 4 with 4 GB of RAM or a small x86 device running Home Assistant on an SSD makes a dramatic difference in dashboard performance.

Fix 10: Fix Dashboard Loading Issues After a Home Assistant Update

A fresh Home Assistant update is often the trigger for dashboard loading problems. Updates can change the frontend structure, deprecate old card types, and break compatibility with custom components that have not yet been updated to match the new version. This is the most common reason a dashboard that was working yesterday suddenly fails today.

The first step after a problematic update is to check the Home Assistant release notes and community forums for known issues. Often, the developers are already aware of the problem and either a fix or a workaround has been published. Search for your specific version number plus “dashboard not loading” to find relevant threads.

If a broken custom card is the cause, go to HACS, look for any cards with an available update, and update them all. Many card developers release compatibility updates within hours of a new Home Assistant release. Running outdated custom cards against a new frontend version is a very common source of loading errors.

If the update introduced a regression in Home Assistant itself, you can roll back to the previous version by going to Settings > System > Updates, opening the update entry, and using the rollback option if it is available. Alternatively, restore a snapshot from before the update was applied.

After any update, it is also good practice to clear your browser cache completely. The new frontend ships updated JavaScript and CSS files, and old cached versions can conflict with them. A full cache clear after every major update prevents a large number of post-update dashboard issues.

Fix 11: Fix the Companion App Dashboard Not Loading

The Home Assistant Companion app on Android and iOS has its own set of causes for dashboard loading failures. A blank white screen, a stuck loading spinner, or a “Cannot connect” message in the app does not always mean the same problem as in a desktop browser. The app has its own cache, its own WebView component, and its own connection settings.

If you see a blank white screen in the Companion app, the first fix is to reset the frontend cache. Go to Settings > Companion App > Debugging > Reset Frontend Cache inside the app, then return to the dashboard and pull down to refresh. This forces the app to re-download all frontend files from your Home Assistant server.

On Android, the app relies on the Android WebView component to render the dashboard. If WebView is outdated, the dashboard may fail to render correctly. Open the Google Play Store, search for “Android System WebView,” and make sure it is fully updated. After updating WebView, restart your phone and try the app again.

If the app is showing a connection error rather than a blank screen, check that your Home Assistant URL is still correct in the app settings. If you recently changed your local IP address or your Nabu Casa remote URL, you need to update the server address in the app. Go to Settings > Companion App > Home Assistant URL and update it to the correct address.

If none of these steps work, try uninstalling and reinstalling the Companion app. When you log in again, make sure to grant all requested permissions, as denied permissions can sometimes prevent the dashboard from loading fully.

Fix 12: Check Your Network and Firewall Settings

Sometimes the Home Assistant server is perfectly healthy, but network or firewall issues are preventing the browser or app from reaching it. This can look identical to a software-based loading failure, but the fix is completely different.

To rule out a network issue, try accessing Home Assistant from a different device on the same network. If it loads on one device but not another, the problem is device-specific (likely a browser or app issue on the affected device). If it fails on all devices, the problem is server-side or network-side.

Check that port 8123 is not being blocked by your router’s firewall or a security application on your computer. Some antivirus and firewall software can block access to local web servers. Temporarily disabling your firewall to test connectivity is a quick way to confirm whether it is the cause.

If you use a reverse proxy (such as NGINX or Traefik) to access Home Assistant remotely, check that the proxy configuration is still correct. A misconfigured proxy can pass requests incorrectly and cause the frontend to fail to load. Check your proxy logs for any connection errors or SSL certificate issues.

Also verify that your Home Assistant server is actually running and listening on port 8123. If you have access to the terminal, run netstat -tlnp | grep 8123 and confirm the process is listed. If it is not, Home Assistant may have crashed silently, and a restart is needed.

Fix 13: Fix Dashboard Not Loading Due to SSL Certificate Issues

If you access Home Assistant over HTTPS with a custom SSL certificate, an expired or invalid certificate can cause the dashboard to fail to load in certain browsers. Modern browsers are very strict about SSL certificate validity and will either block access entirely or show a warning page instead of your dashboard.

Check your SSL certificate expiration date. If you use Let’s Encrypt certificates managed by the Duck DNS or NGINX Proxy Manager add-ons, certificates expire every 90 days and must be renewed automatically. If the auto-renewal failed for any reason, the expired certificate will block HTTPS access.

To check your certificate in Chrome, click the padlock icon in the address bar and select “Certificate.” Look at the “Valid until” date. If it is expired, you need to renew it. If you use the Duck DNS add-on, go to its configuration and ensure the accept_terms option is set to true and restart the add-on to trigger a renewal.

If you are using a self-signed certificate, some browsers will block access unless you manually add a security exception. This is expected behavior and not a Home Assistant problem. You can either add the exception in your browser settings or switch to a properly signed certificate using Let’s Encrypt for a smoother experience.

As a temporary fix while you sort out the certificate, try accessing Home Assistant using HTTP (port 8123) instead of HTTPS. This removes the certificate check entirely and lets you confirm whether the dashboard itself is working correctly.

Fix 14: Restore From a Backup

If you have tried every fix in this guide and the dashboard still refuses to load, restoring from a recent backup is your most reliable path back to a working system. Home Assistant includes a built-in backup system that creates complete snapshots of your configuration, database, and add-ons.

If you can partially access Home Assistant settings (even if the main dashboard does not load), go to Settings > System > Backups and select a recent backup from before the problem started. Click “Restore” and follow the prompts. The system will restore everything to the state it was in when that backup was made.

If you cannot access settings at all, you can restore a backup from the Home Assistant OS recovery interface. Connect a keyboard and monitor to your Home Assistant device, access the console, and use the ha backups restore <backup-slug> command via the SSH terminal.

Going forward, set up automatic backups to run daily or weekly. The built-in backup system can save backups to a local storage location, a network share, or a cloud service via add-ons. Having a recent backup is the ultimate safety net for any major Home Assistant failure, not just dashboard issues.

Make sure your backups are being stored in a location that is separate from your Home Assistant device. If the hardware fails and takes your backups with it, you lose everything. Store backups on a NAS, a USB drive, or a cloud storage service.

Fix 15: Reinstall Home Assistant Frontend

In rare cases, the Home Assistant frontend installation itself can become corrupted. This means that the actual files that build the dashboard interface are damaged or incomplete, and no amount of cache clearing or configuration fixing will help because the problem is with the server-side files themselves.

To force a reinstallation of the frontend, connect to your Home Assistant terminal via SSH. Run the command ha core update --version <your-current-version> to reinstall the current version without upgrading. This forces the system to redownload and reinstall all frontend files fresh. Replace <your-current-version> with your actual version number, which you can find at Settings > System > General.

Alternatively, if you are comfortable with a full reinstall, you can completely reinstall Home Assistant OS while keeping your configuration. This is a more drastic step but is very effective when the frontend installation is genuinely corrupted. Back up your configuration first, then perform a fresh installation and restore your backup.

After reinstalling the frontend, clear your browser cache one more time and reload the dashboard. A fresh frontend combined with a fresh cache almost always resolves even the most persistent loading failures that have no other identifiable cause.

How to Prevent Home Assistant Dashboard Loading Issues in the Future

Prevention is far better than repeated troubleshooting. By following a few simple practices, you can dramatically reduce the chances of your dashboard failing to load in the future.

Always back up your Home Assistant configuration before applying any update. Updates are the single most common trigger for dashboard failures, and having a backup means you can always roll back to a working state. Schedule automatic backups to run at least once a week.

Keep your custom cards and HACS integrations updated. Outdated custom components are a constant source of compatibility problems. After each Home Assistant update, open HACS and check for available updates across all your installed components. Update them promptly.

Keep your database size under control by configuring the Recorder integration to purge old data regularly. A database that grows without limit will eventually slow down or crash your dashboard. Setting purge_keep_days: 7 in your recorder configuration keeps the database lean and fast.

Avoid adding untested custom integrations to a production Home Assistant instance. If you want to experiment with new custom components, set up a test instance on a virtual machine or a spare device. This way, a broken integration cannot take down your main smart home dashboard.

Finally, monitor your system resources periodically. A hardware issue (failing SD card, insufficient RAM, overheating CPU) can present as a software problem. Check your system health under Settings > System > Repairs regularly to catch hardware-related issues before they cause a failure.

Frequently Asked Questions

Why is my Home Assistant dashboard showing a blank white screen?

A blank white screen is most commonly caused by a broken custom card resource, a stale browser cache, or a failed Home Assistant update. Start by clearing your browser cache with Ctrl + Shift + Delete and doing a hard refresh. If the screen is still blank, go to the dashboard’s resource manager (three-dot menu > Manage Resources) and remove any resource with a warning or a broken path. If you are using the Companion app, go to Settings > Companion App > Debugging > Reset Frontend Cache to clear the app’s local cache.

Why does my dashboard only load after I click refresh?

This is a known caching and timing issue in Home Assistant. The dashboard is being served before the frontend files have fully loaded on the server side. This often happens right after a restart when Home Assistant is still initializing. Wait 60 to 90 seconds after a restart before loading the dashboard. If the problem persists even minutes after a restart, check your browser cache settings and consider whether a recently added custom card is causing a timing conflict during page initialization.

Can a bad Home Assistant update break my dashboard?

Yes, absolutely. A Home Assistant update can introduce changes to the frontend that conflict with custom cards or integrations that have not yet been updated for compatibility. If your dashboard broke right after an update, check the Home Assistant community forums and GitHub issues for your specific version number. The fix is usually to update your custom cards via HACS or to temporarily disable the incompatible component until its developer releases a compatibility update.

How do I fix “Error while loading page dashboard” in Home Assistant?

This specific error message most commonly appears when a resource file (usually a custom card JavaScript file) fails to load. Open your browser’s developer console (press F12 > Console tab) and look for red error messages pointing to specific file paths. Then go to your dashboard’s resource manager and remove or reinstall the broken resource. If the error started after a Home Assistant update, reinstalling affected HACS components via the “Redownload” option usually resolves it.

Does a corrupted database cause the dashboard to not load?

Yes, a corrupted home-assistant_v2.db database can cause the Home Assistant frontend to hang on loading, particularly for history and energy data views. If your logs show errors about “disk I/O” or “database locked,” rename the database file to create a backup copy, then restart Home Assistant to generate a fresh clean database. You will lose historical data but your dashboard configuration and automations remain intact.

How do I fix Home Assistant dashboard not loading on mobile?

For the Home Assistant Companion app, go to Settings > Companion App > Debugging > Reset Frontend Cache, then refresh the dashboard. On Android, make sure your Android System WebView is updated in the Google Play Store. Check that the server URL configured in the app is still correct, especially if your local IP address has changed recently. If none of these work, try uninstalling and reinstalling the app, then log in again and reconfigure your server address.

Why is my Home Assistant dashboard extremely slow to load?

Slow dashboard loading is usually caused by one or more of these factors: a large recorder database with too much history data, too many custom cards on a single view, insufficient hardware resources (especially on a Raspberry Pi 3), or high CPU usage from an overloaded integration. Reduce your purge_keep_days setting in the recorder configuration, split large dashboard views into smaller ones, and monitor your CPU and RAM usage under Settings > System > Hardware to identify the bottleneck.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *