
Video analytics - views, watch time, quality of experience and playback errors, from a local daily rollup.
Host and manage video content directly in WordPress with FastPix. Upload and play videos, add AI-powered captions and chapters, protect content with DRM, and track video and course performance through analytics in wp-admin.
Your videos are stored, encoded to adaptive-bitrate quality and streamed from the FastPix network, so your site stays fast and your content stays free of YouTube ads and outside branding. A FastPix account is required.
Get started on the FastPix dashboard | Visit fastpix.com | Read the WordPress docs
Watch how to upload, embed, protect and measure video in WordPress with FastPix:
[fastpix id="…"] shortcodeThe plugin is built to be extended. Here is what you get and how to use it.
Shortcode – use it to place a video anywhere the block editor doesn’t reach: classic editor, a page builder, a widget, or a theme template (via do_shortcode()). The only required attribute is the media ID; everything else tunes the player.
[fastpix id="abc123" autoplay muted accentcolour="#0055FF" starttime="30"]
Common attributes: autoplay, muted, loop, controls, chapters, transcript, captionsdefault, lazyload, accentcolour, poster, starttime, aspectratio. On lesson videos, complete_at sets the watched-percentage that counts as complete and track_viewer records who watched. For a live stream, use [fastpix streamid="…"].
LMS completion hook – use fastpix_video_completed to run your own logic the moment a student finishes a lesson video (award points, send an email, unlock the next module). It fires once, before the LMS credits the lesson:
add_action('fastpix_video_completed', function ($video_id, $user_id, $post_id) { /* your code */ }, 10, 3);
To stop the plugin crediting the lesson automatically and do it yourself, return false from fastpix_lms_auto_complete:
add_filter('fastpix_lms_auto_complete', '__return_false');
Webhooks – FastPix notifies your site through signed webhooks the moment a video finishes processing, a subtitle track is ready, or a live stream changes state, so your library stays in sync without polling. Set the webhook URL and signing secret during setup (see Installation), and every event is verified with an HMAC-SHA256 signature.
Other hooks – filters let you change behaviour without touching the plugin: fastpix_feature_live (turn live streaming on), fastpix_completion_threshold (default watched-percentage for completion), fastpix_lesson_post_types (treat custom post types as lessons), fastpix_structured_data (edit the VideoObject JSON-LD before output). Actions let you react to events: fastpix_media_ready (a video finished processing), fastpix_connected (a workspace was connected). Example – turn live streaming on:
add_filter('fastpix_feature_live', '__return_true');
WP-CLI – manage large libraries and automate maintenance from the terminal or a cron job: wp fastpix status (check the connection, schema and queue), wp fastpix sync (pull in new videos now), wp fastpix reindex (rebuild the transcript search index), wp fastpix doctor (re-run the activation checks when something looks wrong), and more.
FastPix PHP SDK – building your own server-side integration alongside the plugin? Manage uploads, media, playback IDs, live streams and more from your own PHP with the FastPix PHP SDK.
Full reference for every setting, capability, hook and command is in the WordPress plugin settings and reference.
New to hosting video on WordPress? Start with our guide to the best video hosting for WordPress in 2026, see how to add video to WordPress without YouTube, and compare the field in the best WordPress video player plugins in 2026.
If you sell or gate content, read how protecting paid video on WordPress with signed URLs and DRM works, and if you run an LMS, see video hosting for LearnDash, Tutor LMS, LifterLMS and LearnPress. Going live is covered in live streaming from WordPress with RTMPS and SRT.
Already have a library? Learn about moving a WordPress Media Library off your server, keeping hero and background video from wrecking your LCP, and what video analytics in WordPress can tell you that a simple view counter cannot.