🎥 Video Monitoring
GermainUX monitors how real users interact with videos embedded in monitored web applications. It captures playback events and watched duration, allowing teams to analyze video engagement, playback errors, abandonment, and the effect of video performance on the overall user experience.
Generic video monitoring and enhanced Vimeo monitoring are available.
🔎 Monitoring components
|
Component |
Role |
|---|---|
|
Continuously captures video interactions and watched duration when the monitoring script can be deployed in the application. |
|
|
Provides video monitoring when RUM JS cannot be deployed directly or access to the complete browser-page context requires an extension. |
|
|
Provides deeper JavaScript, browser, rendering, resource-loading, and network evidence when a video problem requires technical investigation. |
Generic video monitoring
GermainUX collects the following user interactions for supported videos:
|
Event |
Description |
|---|---|
|
Played |
The user started or resumed playback. |
|
Paused |
The user paused playback. |
|
Ended |
The video reached the end. |
|
Seeked |
The user moved to another position in the video. |
|
Error |
A video playback error occurred. |
|
Full-screen change |
The video entered or exited full-screen mode. |
GermainUX also creates a Video Watched transaction whose duration represents the number of seconds watched.
Vimeo monitoring
GermainUX provides enhanced monitoring for Vimeo videos embedded in web applications. Vimeo monitoring works whether or not the monitored application has enabled the Vimeo Player JavaScript API.
For Vimeo videos, GermainUX can collect:
-
Video ID.
-
Video title.
-
Generic playback events.
-
Watched duration.
-
Entry into or exit from picture-in-picture mode.
The following additional Vimeo events can be collected when requested and configured:
|
Event |
Description |
|---|---|
|
Resize |
The Vimeo player was resized. |
|
Camera change |
The selected camera or viewing angle changed. |
|
Duration change |
The reported video duration changed. |
|
Playback-rate change |
The user or application changed the playback speed. |
|
Volume change |
The playback volume changed. |
|
Chapter change |
The active video chapter changed. |
Only events exposed by the Vimeo player and available in the monitored browser context can be collected.
Capabilities
GermainUX helps teams:
-
Measure how many users start, pause, seek through, or complete a video.
-
Calculate actual watched duration.
-
Identify playback errors affecting real users.
-
Determine where users stop watching or repeatedly seek.
-
Analyze video engagement by page, application, user, browser, or session.
-
Correlate video activity with clicks, navigation, errors, network requests, and Session Replay.
-
Understand how videos contribute to customer journeys, learning processes, support workflows, or conversions.
-
Investigate technical playback problems with the JS Profiler when deeper evidence is required.
Business benefits
Video Monitoring helps organizations:
-
Measure whether users engage with important video content.
-
Identify videos with low completion or high abandonment.
-
Detect playback failures and determine how many users are affected.
-
Understand whether users watch required training or instructional content.
-
Analyze how product videos influence eCommerce engagement and conversion.
-
Find video-related friction in onboarding, support, and business workflows.
-
Prioritize playback issues according to their actual user and business impact.
-
Validate improvements to video content, placement, delivery, or player configuration.
Continuous monitoring
GermainUX RUM JS or the GermainUX RUM Extension continuously monitors supported video activity during real user sessions.
Use:
-
RUM JS when the GermainUX monitoring script can be deployed directly in the application.
-
RUM Extension when direct script deployment is unavailable or the application’s security architecture prevents access to the required browser context.
Video events are associated with the available page, application, browser, user, and session context.
Technical investigation with JS Profiler
When users experience video delays, errors, freezes, or unexpected player behavior, the GermainUX JS Profiler can provide deeper evidence, including:
-
JavaScript function execution.
-
Player-related JavaScript errors and stack traces.
-
Network requests.
-
Video and page-resource loading.
-
Long-running browser tasks.
-
Browser and DOM activity.
-
User interactions.
-
Application, page, and session context.
The JS Profiler complements continuous video monitoring. It should generally be enabled for a controlled scope when deeper technical investigation is required.
Analytics
GermainUX can analyze video activity through KPIs, measures, pivots, trends, drill-through views, and session context.
|
Analysis area |
Examples |
|---|---|
|
Engagement |
Plays, pauses, watched duration, seeks, and completions |
|
Abandonment |
Videos started but not completed |
|
Reliability |
Playback errors and affected users |
|
Player activity |
Full-screen, picture-in-picture, volume, rate, or chapter changes |
|
Segmentation |
Video, page, application, user, browser, or device |
|
Journey context |
Onboarding, training, product discovery, support, or conversion |
|
Technical context |
Network requests, resources, JavaScript errors, and long tasks |
GermainUX users can create watches to receive notifications when collected video insights meet conditions of interest.
Video Watched transaction
The Video Watched transaction measures actual watched time in seconds. It can be used to analyze:
-
Total viewing time.
-
Average viewing time.
-
Viewing time by video.
-
Viewing time by user or session.
-
Videos with high or low engagement.
-
The relationship between watched duration and business outcomes.
Watched duration should not be interpreted as uninterrupted viewing unless the associated playback events confirm continuous playback.
Configuration
Standard monitoring is available after the appropriate GermainUX browser component and User Monitoring Profile are deployed.
Application-specific configuration may be required when:
-
A video player uses a custom implementation.
-
The video is contained in a restricted or cross-origin frame.
-
Only selected videos should be monitored.
-
Additional Vimeo events are required.
-
Video identifiers or titles need custom extraction.
-
Privacy or exclusion rules must be applied.
Validate the configuration with a controlled test that plays, pauses, seeks, and completes a video.
Privacy and security
Video-monitoring events normally describe player activity rather than recording the underlying video stream. However, video titles, identifiers, URLs, page context, and Session Replay can contain sensitive information.
Before deployment:
-
Confirm which pages and videos should be monitored.
-
Avoid collecting sensitive values in video titles or URLs.
-
Apply masking and exclusion rules to surrounding page content.
-
Restrict access to Session Replay and detailed user activity.
-
Apply appropriate retention and compliance requirements.
-
Verify monitoring behavior for authenticated or restricted videos.
Recommended investigation workflow
-
Use RUM JS or the RUM Extension to identify playback errors, abandonment, or unusual video behavior.
-
Determine the affected videos, pages, users, sessions, and browsers.
-
Review play, pause, seek, error, completion, and watched-duration data.
-
Examine the user’s experience through Session Replay when available.
-
Correlate the issue with network requests, resource loading, JavaScript errors, and long tasks.
-
Enable the JS Profiler for a controlled scope when deeper technical evidence is required.
-
Identify the responsible player configuration, script, resource, network request, or third-party service.
-
Implement the correction.
-
Validate the result through continuous Video Monitoring.
Deployment and configuration
|
For your browser environment |
|---|
|
Review Browser Monitoring. |
|
Review the Browser Monitoring Deployment Overview. |
|
Deploy GermainUX RUM JS when the monitoring script can be added to the application. |
|
Deploy the GermainUX RUM Extension when direct script deployment is unavailable or access to the complete browser-page context requires an extension. |
|
Deploy the GermainUX JS Profiler for deeper JavaScript, network, resource-loading, and browser diagnostics. |
|
Review the available Browser Monitoring configuration. |
|
Review Network Request Monitoring. |
|
Review the KPIs for User Monitoring and Replay. |
|
Review the available Browser Monitoring KPIs. |
ℹ️ Get Help
The Germain Team can help you set this up. Contact GermainUX Support.
Component: JS Profiler, RUM JS, RUM Extension
Feature Availability: 2021.1 or later
Browser Support: only latest Chrome, Edge and Opera