files/en-us/web/api/notrestoredreasondetails/reason/index.md
{{APIRef("Performance API")}}{{SeeCompatTable}}
The reason read-only property of the
{{domxref("NotRestoredReasonDetails")}} interface returns a string describing a reason that the page was blocked from using the back/forward cache ({{Glossary("bfcache")}}).
A string.
There are many different reasons why blocking could occur, and browsers can choose to implement their own specific reasons for blocking, based on how they operate. Developers should avoid depending on specific wording for reasons and be prepared to handle new reasons being added and deleted.
The initial values listed in the specification are:
"fetch"
"lock"
"masked"
"navigation-failure"
"parser-aborted"
"websocket"
Additional blocking reasons may be used by some browsers, for example:
"unload-listener"
unload handler, which prevents bfcache usage. This serves as a useful warning, as unload is deprecated. See usage notes for more information."response-cache-control-no-store"
no-store as a {{httpheader("Cache-Control")}} header value."related-active-contents"
See Monitoring bfcache blocking reasons for examples.
{{Specifications}}
{{Compat}}