{"id":36413,"date":"2024-12-09T07:00:00","date_gmt":"2024-12-09T15:00:00","guid":{"rendered":"https:\/\/cloudinary.com\/blog\/?p=36413"},"modified":"2024-12-10T14:46:57","modified_gmt":"2024-12-10T22:46:57","slug":"optimize-background-videos","status":"publish","type":"post","link":"https:\/\/cloudinary.com\/blog\/optimize-background-videos","title":{"rendered":"How to Optimize Background Videos With Cloudinary"},"content":{"rendered":"<div class=\"wp-block-cloudinary-markdown \"><p>Incorporating video into marketing strategy is ever growing. An incredible <a href=\"https:\/\/www.wyzowl.com\/video-marketing-statistics\/\">87% of consumers<\/a> say video quality impacts their trust in a brand, and 82% are convinced to purchase after watching a product video. Clearly, videos help convey your brand\u2019s story.<\/p>\n<p>But what about background videos? They\u2019re an option for quick messaging, can improve your site\u2019s search engine rankings (with the right meta data), and inject some personality into your website. They can, however, impact performance if not handled carefully.<\/p>\n<p>In this blog post, we\u2019ll learn how to add a background video using Cloudinary and apply different techniques for optimization, so we can reduce the file size without compromising on quality.<\/p>\n<h2>Prerequisites<\/h2>\n<p>Before we start, make sure you\u2019ve signed up for <a href=\"https:\/\/cloudinary.com\/users\/register_free\">a free Cloudinary account<\/a> and have a video file to work with.<\/p>\n<h2>Uploading the Video File<\/h2>\n<p>Let\u2019s start by uploading our video to Cloudinary. We\u2019ll need it as the source for our media.<\/p>\n<p>Head to <a href=\"https:\/\/cloudinary.com\">cloudinary.com<\/a> and log in to your account. Then go to your media assets and click the <strong>Upload<\/strong>.<\/p>\n<p><img width=\"1999\" height=\"1289\" data-public-id=\"Web_Assets\/blog\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-1\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-1.png\" decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/w_1999,h_1289,c_scale\/f_auto,q_auto\/v1733870005\/Web_Assets\/blog\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-1\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-1.png?_i=AA\" alt=\"image1\" loading=\"lazy\" class=\"c-transformed-asset wp-image-36414\" data-format=\"png\" data-transformations=\"f_auto,q_auto\" data-version=\"1733870005\" data-seo=\"1\" srcset=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1733870005\/Web_Assets\/blog\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-1\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-1.png?_i=AA 1999w, https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1733870005\/Web_Assets\/blog\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-1\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-1.png?_i=AA 300w, https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1733870005\/Web_Assets\/blog\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-1\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-1.png?_i=AA 768w, https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1733870005\/Web_Assets\/blog\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-1\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-1.png?_i=AA 1024w, https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1733870005\/Web_Assets\/blog\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-1\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-1.png?_i=AA 1536w\" sizes=\"(max-width: 1999px) 100vw, 1999px\" \/><\/p>\n<p>Select your video and image and upload them.<\/p>\n<p><img width=\"1999\" height=\"1366\" data-public-id=\"Web_Assets\/blog\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-2\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-2.png\" decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/w_1999,h_1366,c_scale\/f_auto,q_auto\/v1733870185\/Web_Assets\/blog\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-2\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-2.png?_i=AA\" alt=\"welcome to our website\" loading=\"lazy\" class=\"c-transformed-asset wp-image-36415\" data-format=\"png\" data-transformations=\"f_auto,q_auto\" data-version=\"1733870185\" data-seo=\"1\" srcset=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1733870185\/Web_Assets\/blog\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-2\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-2.png?_i=AA 1999w, https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1733870185\/Web_Assets\/blog\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-2\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-2.png?_i=AA 300w, https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1733870185\/Web_Assets\/blog\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-2\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-2.png?_i=AA 768w, https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1733870185\/Web_Assets\/blog\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-2\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-2.png?_i=AA 1024w, https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1733870185\/Web_Assets\/blog\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-2\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-2.png?_i=AA 1536w\" sizes=\"(max-width: 1999px) 100vw, 1999px\" \/><\/p>\n<p>We\u2019ll change the video source to use the video URL from Cloudinary.\nAfter adding it to our page and refreshing, we can see the video displayed as a background.<\/p>\n<pre class=\"js-syntax-highlighted\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"HTML, XML\" data-shcb-language-slug=\"xml\"><span><code class=\"hljs language-xml shcb-wrap-lines\"><span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">video<\/span> <span class=\"hljs-attr\">autoplay<\/span> <span class=\"hljs-attr\">muted<\/span> <span class=\"hljs-attr\">loop<\/span>&gt;<\/span>\n\n<span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">source<\/span> <span class=\"hljs-attr\">src<\/span>=<span class=\"hljs-string\">\"https:\/\/res.cloudinary.com\/flfdev\/video\/upload\/v1726841350\/216058_medium_nxvbmk\"<\/span>&gt;<\/span>\n\nYour browser does not support the video tag.\n\n<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">video<\/span>&gt;<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">HTML, XML<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">xml<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n<video autoplay muted loop>\n<source src=\"https:\/\/res.cloudinary.com\/flakolefluk\/video\/upload\/f_auto:video,q_auto\/v1728278735\/Screen_Recording_2024-09-20_at_11.23.19_AM_bb8emn\">\n<p>Your browser does not support the video tag.<\/p>\n<\/video>\n<p>Video by <a href=\"https:\/\/pixabay.com\/users\/droneradical-29856243\/?utm_source=link-attribution&#038;utm_medium=referral&#038;utm_campaign=video&#038;utm_content=216058\">JOAO CARLOS OLIVEIRA DA SILVA<\/a> from <a href=\"https:\/\/pixabay.com\/\/?utm_source=link-attribution&#038;utm_medium=referral&#038;utm_campaign=video&#038;utm_content=216058\">Pixabay<\/a><\/p>\n<p>Much better. However, if we inspect how much data is downloaded, we\u2019ll see that our video isn\u2019t optimized and we\u2019re downloading much more data than we\u2019d want.<\/p>\n<h2>Format<\/h2>\n<p>One of the first things we can start optimizing is the format. It\u2019s possible to change the format based on the extension added at the end. For example, changing the source to <a href=\"https:\/\/res.cloudinary.com\/flfdev\/video\/upload\/v1726841350\/216058_medium_nxvbmk.webm\">https:\/\/res.cloudinary.com\/flfdev\/video\/upload\/v1726841350\/216058_medium_nxvbmk.webm<\/a> would return a webm version of the file, however compatibility should be accounted for.\nFortunately, Cloudinary provides a way to pick the best format based on browser conditions.\nTo enable auto selection of format we can use <code>f_auto:&lt;media_type&gt;<\/code> to apply a transformation.\nOur URL now becomes <a href=\"https:\/\/res.cloudinary.com\/flfdev\/video\/upload\/f_auto:video\/v1726841350\/216058_medium_nxvbmk\">https:\/\/res.cloudinary.com\/flfdev\/video\/upload\/f_auto:video\/v1726841350\/216058_medium_nxvbmk<\/a>, applying the automatic_format_selection transformation.\nIf you want to be explicit about what types can be used we can use multiple sources and let the browser pick the first one it supports.<\/p>\n<pre class=\"js-syntax-highlighted\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"HTML, XML\" data-shcb-language-slug=\"xml\"><span><code class=\"hljs language-xml shcb-wrap-lines\"><span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">video<\/span> <span class=\"hljs-attr\">autoplay<\/span> <span class=\"hljs-attr\">muted<\/span> <span class=\"hljs-attr\">loop<\/span>&gt;<\/span>\n\t<span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">source<\/span> <span class=\"hljs-attr\">src<\/span>=<span class=\"hljs-string\">\"https:\/\/res.cloudinary.com\/flfdev\/video\/upload\/v1726841350\/216058_medium_nxvbmk.webm\"<\/span>&gt;<\/span>\n    <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">source<\/span> <span class=\"hljs-attr\">src<\/span>=<span class=\"hljs-string\">\"https:\/\/res.cloudinary.com\/flfdev\/video\/upload\/v1726841350\/216058_medium_nxvbmk.mp4\"<\/span>&gt;<\/span>\n    \n<span class=\"hljs-comment\">&lt;!--\n\t&lt;source src=\"https:\/\/res.cloudinary.com\/flfdev\/video\/upload\/f_auto:video\/v1726841350\/216058_medium_nxvbmk\"&gt;\n--&gt;<\/span>\n<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">video<\/span>&gt;<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">HTML, XML<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">xml<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n<h2>Quality<\/h2>\n<p>We can optimize our video based on quality. Like we did previously with format, we can also provide a specific value, but we can opt for an automatic handling of this value. This will control the amount of compression of the video.<\/p>\n<p>Possible values include values like <code>q_80<\/code> or <code>q_auto<\/code>.<\/p>\n<p>If we were using the f_auto transformation to specify more than one transformation, we\u2019d separate them with commas.<\/p>\n<pre class=\"js-syntax-highlighted\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"HTML, XML\" data-shcb-language-slug=\"xml\"><span><code class=\"hljs language-xml shcb-wrap-lines\"><span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">video<\/span> <span class=\"hljs-attr\">autoplay<\/span> <span class=\"hljs-attr\">muted<\/span> <span class=\"hljs-attr\">loop<\/span>&gt;<\/span>\n\t<span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">source<\/span> <span class=\"hljs-attr\">src<\/span>=<span class=\"hljs-string\">\"https:\/\/res.cloudinary.com\/flfdev\/video\/upload\/q_auto:best\/v1726841350\/216058_medium_nxvbmk.webm\"<\/span>&gt;<\/span>\n    <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">source<\/span> <span class=\"hljs-attr\">src<\/span>=<span class=\"hljs-string\">\"https:\/\/res.cloudinary.com\/flfdev\/video\/upload\/q_auto:best\/v1726841350\/216058_medium_nxvbmk.mp4\"<\/span>&gt;<\/span>\n    \n<span class=\"hljs-comment\">&lt;!--\n\t&lt;source src=\"https:\/\/res.cloudinary.com\/flfdev\/video\/upload\/f_auto:video,q_auto:best\/v1726841350\/216058_medium_nxvbmk\"&gt;\n--&gt;<\/span>\n<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">video<\/span>&gt;<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">HTML, XML<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">xml<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n<h2>Video Codec<\/h2>\n<p>Besides format and quality, it\u2019s possible to choose the video codec, but, like we did with the quality, we can let Cloudinary\u2019s algorithm pick the best option based on the browser information. Note that when using other transformations, <code>vc_auto<\/code> is already applied so it doesn\u2019t need to be added explicitly.<\/p>\n<h2>Frame Rate<\/h2>\n<p>Videos are a series of still images (frames). The speed at which those frames change is the frame rate. The more frames we need to display per second, the larger the amount of data we need to transmit. You can tweak those values to suit our background video. We\u2019ll use the <code>fps_&lt;frames&gt;<\/code> to adjust the number of frames per second.<\/p>\n<pre class=\"js-syntax-highlighted\" aria-describedby=\"shcb-language-4\" data-shcb-language-name=\"HTML, XML\" data-shcb-language-slug=\"xml\"><span><code class=\"hljs language-xml shcb-wrap-lines\"><span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">video<\/span> <span class=\"hljs-attr\">autoplay<\/span> <span class=\"hljs-attr\">muted<\/span> <span class=\"hljs-attr\">loop<\/span>&gt;<\/span>\n\t<span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">source<\/span> <span class=\"hljs-attr\">src<\/span>=<span class=\"hljs-string\">\"https:\/\/res.cloudinary.com\/flfdev\/video\/upload\/q_auto:best,fps_24\/v1726841350\/216058_medium_nxvbmk.webm\"<\/span>&gt;<\/span>\n    <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">source<\/span> <span class=\"hljs-attr\">src<\/span>=<span class=\"hljs-string\">\"https:\/\/res.cloudinary.com\/flfdev\/video\/upload\/q_auto:best,fps_24\/v1726841350\/216058_medium_nxvbmk.mp4\"<\/span>&gt;<\/span>\n    \n<span class=\"hljs-comment\">&lt;!--\n\t&lt;source src=\"https:\/\/res.cloudinary.com\/flfdev\/video\/upload\/f_auto:video,q_auto:best,fps_24\/v1726841350\/216058_medium_nxvbmk\"&gt;\n--&gt;<\/span>\n<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">video<\/span>&gt;<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-4\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">HTML, XML<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">xml<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n<h2>Duration<\/h2>\n<p>This may sound a bit obvious, but the longer the video, the larger amount of data to download. Our video is 33 seconds long, but I think 15 seconds is more than enough to achieve the desired effect. Let\u2019s set the duration of our video. To limit the length of a video to <em>n<\/em> seconds, we\u2019ll use the <code>du_&lt;n&gt;<\/code> transformation. So let\u2019s add it to our URL.<\/p>\n<pre class=\"js-syntax-highlighted\" aria-describedby=\"shcb-language-5\" data-shcb-language-name=\"HTML, XML\" data-shcb-language-slug=\"xml\"><span><code class=\"hljs language-xml shcb-wrap-lines\"><span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">video<\/span> <span class=\"hljs-attr\">autoplay<\/span> <span class=\"hljs-attr\">muted<\/span> <span class=\"hljs-attr\">loop<\/span>&gt;<\/span>\n\t<span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">source<\/span> <span class=\"hljs-attr\">src<\/span>=<span class=\"hljs-string\">\"https:\/\/res.cloudinary.com\/flfdev\/video\/upload\/q_auto:best,fps_24,du_15\/v1726841350\/216058_medium_nxvbmk.webm\"<\/span>&gt;<\/span>\n    <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">source<\/span> <span class=\"hljs-attr\">src<\/span>=<span class=\"hljs-string\">\"https:\/\/res.cloudinary.com\/flfdev\/video\/upload\/q_auto:best,fps_24,du_15\/v1726841350\/216058_medium_nxvbmk.mp4\"<\/span>&gt;<\/span>\n    \n<span class=\"hljs-comment\">&lt;!--\n\t&lt;source src=\"https:\/\/res.cloudinary.com\/flfdev\/video\/upload\/f_auto:video,q_auto:best,fps_24,du_15\/v1726841350\/216058_medium_nxvbmk\"&gt;\n--&gt;<\/span>\n<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">video<\/span>&gt;<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-5\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">HTML, XML<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">xml<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n<h2>Resizing<\/h2>\n<p>Finally, we should take into consideration the size of our video. Is our video full screen or is it limited to a maximum width or height?. Are we using a different aspect ratio?\nAll of these parameters can be adjusted and will affect how much data is sent.\nTransformations like <code>ar_16:9<\/code> or <code>ar_4:3<\/code> will crop our video to match the desired aspect ratio. <code>w_&lt;pixels&gt;<\/code> or <code>h_&lt;pixels<\/code> will set the width and height to a fixed number of pixels. By default changing the height or width will scale the video, but you can change that behavior.<\/p>\n<pre class=\"js-syntax-highlighted\" aria-describedby=\"shcb-language-6\" data-shcb-language-name=\"HTML, XML\" data-shcb-language-slug=\"xml\"><span><code class=\"hljs language-xml shcb-wrap-lines\"><span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">video<\/span> <span class=\"hljs-attr\">autoplay<\/span> <span class=\"hljs-attr\">muted<\/span> <span class=\"hljs-attr\">loop<\/span>&gt;<\/span>\n\t<span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">source<\/span> <span class=\"hljs-attr\">src<\/span>=<span class=\"hljs-string\">\"https:\/\/res.cloudinary.com\/flfdev\/video\/upload\/q_auto:best,fps_24,du_15,w_1280\/v1726841350\/216058_medium_nxvbmk.webm\"<\/span>&gt;<\/span>\n    <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">source<\/span> <span class=\"hljs-attr\">src<\/span>=<span class=\"hljs-string\">\"https:\/\/res.cloudinary.com\/flfdev\/video\/upload\/q_auto:best,fps_24,du_15,w_1280\/v1726841350\/216058_medium_nxvbmk.mp4\"<\/span>&gt;<\/span>\n    \n<span class=\"hljs-comment\">&lt;!--\n\t&lt;source src=\"https:\/\/res.cloudinary.com\/flfdev\/video\/upload\/f_auto:video,q_auto:best,fps_24,du_15\/v1726841350\/216058_medium_nxvbmk\"&gt;\n--&gt;<\/span>\n<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">video<\/span>&gt;<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-6\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">HTML, XML<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">xml<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n<h2>Conclusion<\/h2>\n<p>In this blog post, we\u2019ve learned some techniques to deliver the best experience for users, with great quality videos but sending the right amount of data.<\/p>\n<p>After uploading and optimizing the video, we reduced the file size from approximately <strong>58 MB to 1.1 MB<\/strong>. This dramatic reduction leads to faster load times and a more seamless user experience.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/v1733870179\/Web_Assets\/blog\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-3\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-3-png?_i=AA\" alt=\"file size 1\" loading=\"lazy\" class=\"c-transformed-asset\"  width=\"1999\" height=\"892\"\/><\/p>\n<p><img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/v1733870170\/Web_Assets\/blog\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-4\/blog-How-to-Optimize-Background-Videos-With-Cloudinary-4-png?_i=AA\" alt=\"file size 2\" loading=\"lazy\" class=\"c-transformed-asset\"  width=\"1999\" height=\"923\"\/><\/p>\n<p>Deliver optimized visual media assets in the format and quality best suited for any device, browser, and connection speed. <a href=\"https:\/\/cloudinary.com\/users\/register_free\">Contact us today<\/a> to learn more.<\/p>\n<p>If you found this blog post helpful and want to discuss it in more detail, head over to the <a href=\"https:\/\/community.cloudinary.com\/\">Cloudinary Community forum<\/a> and its associated <a href=\"https:\/\/community.cloudinary.com\/\">Discord<\/a>.<\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"","protected":false},"author":87,"featured_media":36418,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_cloudinary_featured_overwrite":false,"footnotes":""},"categories":[1],"tags":[227,303],"class_list":["post-36413","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-performance-optimization","tag-video"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.6 (Yoast SEO v26.9) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>How to Optimize Background Videos With Cloudinary<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/cloudinary.com\/blog\/optimize-background-videos\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Optimize Background Videos With Cloudinary\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cloudinary.com\/blog\/optimize-background-videos\" \/>\n<meta property=\"og:site_name\" content=\"Cloudinary Blog\" \/>\n<meta property=\"article:published_time\" content=\"2024-12-09T15:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-12-10T22:46:57+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/v1733775707\/How_to_Optimize_Video_Backgrounds\/How_to_Optimize_Video_Backgrounds-jpg?_i=AA\" \/>\n\t<meta property=\"og:image:width\" content=\"2000\" \/>\n\t<meta property=\"og:image:height\" content=\"1100\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"melindapham\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"NewsArticle\",\"@id\":\"https:\/\/cloudinary.com\/blog\/optimize-background-videos#article\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/optimize-background-videos\"},\"author\":{\"name\":\"melindapham\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/0d5ad601e4c3b5be89245dfb14be42d9\"},\"headline\":\"How to Optimize Background Videos With Cloudinary\",\"datePublished\":\"2024-12-09T15:00:00+00:00\",\"dateModified\":\"2024-12-10T22:46:57+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/optimize-background-videos\"},\"wordCount\":7,\"publisher\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/optimize-background-videos#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1733775707\/How_to_Optimize_Video_Backgrounds\/How_to_Optimize_Video_Backgrounds.jpg?_i=AA\",\"keywords\":[\"Performance Optimization\",\"Video\"],\"inLanguage\":\"en-US\",\"copyrightYear\":\"2024\",\"copyrightHolder\":{\"@id\":\"https:\/\/cloudinary.com\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/cloudinary.com\/blog\/optimize-background-videos\",\"url\":\"https:\/\/cloudinary.com\/blog\/optimize-background-videos\",\"name\":\"How to Optimize Background Videos With Cloudinary\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/optimize-background-videos#primaryimage\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/optimize-background-videos#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1733775707\/How_to_Optimize_Video_Backgrounds\/How_to_Optimize_Video_Backgrounds.jpg?_i=AA\",\"datePublished\":\"2024-12-09T15:00:00+00:00\",\"dateModified\":\"2024-12-10T22:46:57+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/optimize-background-videos#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/cloudinary.com\/blog\/optimize-background-videos\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/optimize-background-videos#primaryimage\",\"url\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1733775707\/How_to_Optimize_Video_Backgrounds\/How_to_Optimize_Video_Backgrounds.jpg?_i=AA\",\"contentUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1733775707\/How_to_Optimize_Video_Backgrounds\/How_to_Optimize_Video_Backgrounds.jpg?_i=AA\",\"width\":2000,\"height\":1100},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/cloudinary.com\/blog\/optimize-background-videos#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/cloudinary.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to Optimize Background Videos With Cloudinary\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#website\",\"url\":\"https:\/\/cloudinary.com\/blog\/\",\"name\":\"Cloudinary Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/cloudinary.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\",\"name\":\"Cloudinary Blog\",\"url\":\"https:\/\/cloudinary.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA\",\"contentUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA\",\"width\":312,\"height\":60,\"caption\":\"Cloudinary Blog\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/0d5ad601e4c3b5be89245dfb14be42d9\",\"name\":\"melindapham\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/e6f989fa97fe94be61596259d8629c3df65aec4c7da5c0000f90d810f313d4f4?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/e6f989fa97fe94be61596259d8629c3df65aec4c7da5c0000f90d810f313d4f4?s=96&d=mm&r=g\",\"caption\":\"melindapham\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to Optimize Background Videos With Cloudinary","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/cloudinary.com\/blog\/optimize-background-videos","og_locale":"en_US","og_type":"article","og_title":"How to Optimize Background Videos With Cloudinary","og_url":"https:\/\/cloudinary.com\/blog\/optimize-background-videos","og_site_name":"Cloudinary Blog","article_published_time":"2024-12-09T15:00:00+00:00","article_modified_time":"2024-12-10T22:46:57+00:00","og_image":[{"width":2000,"height":1100,"url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/v1733775707\/How_to_Optimize_Video_Backgrounds\/How_to_Optimize_Video_Backgrounds-jpg?_i=AA","type":"image\/jpeg"}],"author":"melindapham","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"NewsArticle","@id":"https:\/\/cloudinary.com\/blog\/optimize-background-videos#article","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/optimize-background-videos"},"author":{"name":"melindapham","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/0d5ad601e4c3b5be89245dfb14be42d9"},"headline":"How to Optimize Background Videos With Cloudinary","datePublished":"2024-12-09T15:00:00+00:00","dateModified":"2024-12-10T22:46:57+00:00","mainEntityOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/optimize-background-videos"},"wordCount":7,"publisher":{"@id":"https:\/\/cloudinary.com\/blog\/#organization"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/optimize-background-videos#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1733775707\/How_to_Optimize_Video_Backgrounds\/How_to_Optimize_Video_Backgrounds.jpg?_i=AA","keywords":["Performance Optimization","Video"],"inLanguage":"en-US","copyrightYear":"2024","copyrightHolder":{"@id":"https:\/\/cloudinary.com\/#organization"}},{"@type":"WebPage","@id":"https:\/\/cloudinary.com\/blog\/optimize-background-videos","url":"https:\/\/cloudinary.com\/blog\/optimize-background-videos","name":"How to Optimize Background Videos With Cloudinary","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/optimize-background-videos#primaryimage"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/optimize-background-videos#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1733775707\/How_to_Optimize_Video_Backgrounds\/How_to_Optimize_Video_Backgrounds.jpg?_i=AA","datePublished":"2024-12-09T15:00:00+00:00","dateModified":"2024-12-10T22:46:57+00:00","breadcrumb":{"@id":"https:\/\/cloudinary.com\/blog\/optimize-background-videos#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cloudinary.com\/blog\/optimize-background-videos"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/optimize-background-videos#primaryimage","url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1733775707\/How_to_Optimize_Video_Backgrounds\/How_to_Optimize_Video_Backgrounds.jpg?_i=AA","contentUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1733775707\/How_to_Optimize_Video_Backgrounds\/How_to_Optimize_Video_Backgrounds.jpg?_i=AA","width":2000,"height":1100},{"@type":"BreadcrumbList","@id":"https:\/\/cloudinary.com\/blog\/optimize-background-videos#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/cloudinary.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to Optimize Background Videos With Cloudinary"}]},{"@type":"WebSite","@id":"https:\/\/cloudinary.com\/blog\/#website","url":"https:\/\/cloudinary.com\/blog\/","name":"Cloudinary Blog","description":"","publisher":{"@id":"https:\/\/cloudinary.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/cloudinary.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/cloudinary.com\/blog\/#organization","name":"Cloudinary Blog","url":"https:\/\/cloudinary.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA","contentUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA","width":312,"height":60,"caption":"Cloudinary Blog"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/0d5ad601e4c3b5be89245dfb14be42d9","name":"melindapham","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/e6f989fa97fe94be61596259d8629c3df65aec4c7da5c0000f90d810f313d4f4?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/e6f989fa97fe94be61596259d8629c3df65aec4c7da5c0000f90d810f313d4f4?s=96&d=mm&r=g","caption":"melindapham"}}]}},"jetpack_featured_media_url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1733775707\/How_to_Optimize_Video_Backgrounds\/How_to_Optimize_Video_Backgrounds.jpg?_i=AA","_links":{"self":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/36413","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/users\/87"}],"replies":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/comments?post=36413"}],"version-history":[{"count":1,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/36413\/revisions"}],"predecessor-version":[{"id":36419,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/36413\/revisions\/36419"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media\/36418"}],"wp:attachment":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media?parent=36413"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/categories?post=36413"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/tags?post=36413"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}