---
title: HTML Storage
slug: develop/html-storage
docTags: 
createdAt: 2025-03-11T07:03:32.131Z
---

The following [roHtmlWidget](docId\:xljq5_YhDmA2SSmpZimtK)  methods are used to configure HTML storage on the BrightSign player:

- `SetLocalStorageDir()`
- `SetLocalStorageQuota()`
- `SetWebDatabaseDir()`
- `SetWebStorageQuota()`
- `SetAppCacheDir()`
- `SetAppCacheQuota()`

:::hint{type="info"}
The behavior of *roHtmlWidget* storage methods has changed in OS8. The new behavior is described below. Updating a player to OS8 from 7.1.x or earlier will cause stored HTML data on the player to be reset.
:::

## Initialization

The above methods take effect when a new *roHtmlWidget* instance is created; they don't apply to the *roHtmlWidget* instance on which they are called (this is not the case for the the `storage_path` and `storage_quota` [initialization](docId\:xljq5_YhDmA2SSmpZimtK) parameters).

## Storage Path

The `SetLocalStorageDir()`, `SetWebDatabaseDir()`, and `SetAppCacheDir()` methods all configure the same storage path, so calling one of these methods will overwrite the storage path configured by the other methods.

Without a storage path (for example, when you are using an 'incognito' browser), nothing will persist when you are finished with the Chromium instance. If you want data to persist through reboot and widget creation, you must set a storage path. When non-persistent (incognito) mode is used, 10% of the total system memory is reserved for browser storage. This memory will be shared between multiple roHtmlWidget instances.

## Storage Quota

The `SetLocalStorageQuota()`, `SetWebStorageQuota()`, and `SetAppCacheQuota()`  methods all configure the same storage quota, which applies to all persistent HTML storage on the player. If the storage path is specified without a storage quota, Chromium defaults to reserving 1GB plus 10% of the total size of the storage device.

If there are multiple *roHtmlWidget* instances, the configured or default quota is shared among them.
