Skip to main content
Hook for retrieving metrics for an Asset.

Usage

Metrics are currently only available if a user has the ID associated with an asset. This should only be the user(s) with write access to the asset - viewers are not able to use this hook.
The following examples assume an ID has been created for an asset, and the Player is used for playback (with its built-in metrics reporting).
If a falsy asset ID is provided, the query will be skipped.

Return Value

The return value is partially based on Tanstack Query, with some return types aggregated for simplicity.

Configuration

assetId

Asset identifier.

UseQueryOptions

The useAssetMetrics hook also supports any Tanstack Query useQuery options, such as refetchInterval or enabled. These override any configs passed by default by the internal hook.

SSR

The following section only applies to web-based use-cases - React Native has no concept of SSR.

Next.js

The useAssetMetrics hook also comes with a Tanstack Query prefetch query, prefetchAssetMetrics, which makes it easy to prefetch data for server-side rendering. First, you add a getStaticProps function to the page which you want to prefetch data on. The props should match the useAsset hook to ensure that the correct data is prefetched.
We need to update the _app.tsx to pass the dehydratedState in pageProps to the LivepeerConfig. We also move the livepeerClient into a useMemo hook so that a new client is created on each request.
That’s it! You now have data prefetching on the server, which is passed to the browser and used to hydrate the initial query client.

Other Frameworks

The process is very similar for other frameworks, with the exception that there is a clearClient boolean which should be used to ensure that the client cache is not reused across users.
Last modified on March 18, 2026