I need to provide users of a customer portal with video tutorials. The best way would be to play it directly in the portal without downloading (embedded or like youtube).

Two questions about how best to accomplish this:

  1. How do I store these videos? Documents can only hold 5MBs. Can I use Chatter Files? Anything else in Salesforce or do I have to use an external storage option?
  2. Is there a preferred way of embedding these files in Salesforce, like a VF-tag or something? Or do I just use HTML-techniques?

3 Answers 3


Peronsally I wouldn't use Salesforce as a video hosting platform. Storage is expensive, and overall speed is slow. Both bad qualities to have when you need to serve really big files fast.

A more direct approach would be to consider using 3rd party video hosting sites and then embed links to those videos in Salesforce. To simplify maintenance it might be worth having a custom object to store the name of the video and a link to the content that can be used for the embed code. I've played around with YouTube in the past for this purpose.

Assuming you're showing some sort of training videos you might also take a look at what LMS (Learning Management System) tools for Salesforce have to offer.

You might also consider a client side player and hosting the videos on amazon S3.

With regards to the preferred embedding technique, you'll want to stick to regular HTML techniques.


Salesforce is not for hosting large size files. The easiest way to embed a youtube video in in visualforce page is

<apex:iframe width="425" height="325" src="https://www.youtube.com/embed/xxxyyyzzz"/>

And In case you prefer salesforce then you can use flash player format videos and store them in static resource. They less bulky then a video file for ex: Jing videos, they are smaller in size and higher resolution.

Way of embedding not new just use them as:

<apex:flash play="true" loop="true" src="{!$Resource.Fash_swf_File.swf}"  height="325" width="50%" />

These are the two ways to embed video using visualforce tag. Also I prefer to go with html tag instead. They have more controlling options then native apex tag and don't create difference much more, but needed a little effort more then native tags.


Salesforce.com is not a hosting platform if you are considering hosting something on it. You will likely pay way more than getting hosting anywhere else.

My preferred way to do it:

  1. Upload video on the 3rd party hosting platform.
  2. Use Visualforce to embed the video in.
  3. Expose the Visualforce page via a tab in the Customer Portal.

How to embed the video:

<apex:iframe width="420" height="315" src="ENTER THE URL"/>

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .