Demo slots — limited this weekBook a demo →
Task guide · 4 min read

How to upload a video to Skool without the transcoding headache

Skool accepts video in community posts, in Classroom lessons, in DMs (smaller), and as event recordings. The mechanics differ slightly in each but the core rules (format, size, transcoding) are the same.

Try Tools4Skool free →Book a demo
On this page

Where you can upload video on Skool

Skool supports video in four places, each with slightly different limits.

Classroom lessons. The main video destination. Up to roughly 5 GB per file, native player with playback speed and full-screen. Best for course content where you want full control.

Community posts. Up to roughly 500 MB per file. Native player, auto-plays muted in the feed. Best for short clips, behind-the-scenes content, member wins.

DMs. Up to roughly 100 MB per file. Smaller because DMs are not the main video destination. Best for one-to-one tutorials or feedback videos.

Event recordings (replays). Same limits as Classroom (roughly 5 GB). Attached to the event in the Calendar tab after the live call.

The limits are approximate, Skool has changed them over time and the published numbers do not always match observed behavior. As a rule, anything under 2 GB uploads reliably, anything between 2 and 5 GB sometimes fails on weak connections, anything above 5 GB needs to be hosted elsewhere and embedded.

Stop doing this by hand. Automate it in 2 minutes.

Welcome DMs, churn-saver, pipeline, member exports. Free plan forever, paid tiers from $29/mo.

Free plan forever · no card required · 2-min setup

Format and size specs that work

Safe video specs for any Skool upload:

  • Container: MP4
  • Video codec: H.264 (also called AVC). H.265 (HEVC) sometimes works but transcoding is unreliable, stick with H.264.
  • Audio codec: AAC at 128 to 256 kbps, mono or stereo
  • Resolution: 1080p (1920x1080) is the standard. 720p is fine for low-bandwidth content. 4K is overkill and produces huge files for negligible quality gain on most viewer screens.
  • Frame rate: 30 fps. 60 fps works but doubles the file size for content that does not need it.
  • Bitrate: 5 to 10 Mbps for 1080p, 2 to 5 Mbps for 720p. Higher than this is wasted bandwidth.
  • Aspect ratio: 16:9 (landscape) for most content. 9:16 (vertical) only if your audience is mobile-first and you specifically want vertical, the Skool player letterboxes vertical video in horizontal containers.
  • Length: No hard cap. 5 to 15 minutes per lesson is the sweet spot for completion. 60 to 90 minutes for live call replays. Anything over 2 hours starts hitting upload limits on weak connections.

What does not work:

  • MKV, AVI, WMV containers (sometimes upload, sometimes silently fail)
  • VP9 or AV1 codecs (Skool does not transcode these)
  • Variable frame rate (VFR), causes audio sync issues, always export with constant frame rate
  • Audio-only files (no MP3 or M4A upload as a fake video, use a tool to create a static-image MP4)
  1. 1
    Export video as MP4 H.264

    From your editor, export as 1080p MP4, H.264 codec, AAC audio, constant frame rate 30 fps, target bitrate 5 to 10 Mbps. Keep file under 2 GB if possible.

  2. 2
    Open the destination on Skool

    Classroom lesson, community post, DM thread, or event Recording section. Click the video icon or Add video button.

  3. 3
    Browse or drag to upload

    Select the file. Skool shows upload progress. Keep the tab open and connection stable until upload completes.

  4. 4
    Wait for transcoding

    After upload, Skool transcodes the video. Time is roughly 1 to 3x video length. The lesson or post shows Processing until ready.

  5. 5
    Add captions if needed

    If your plan supports SRT, upload the .srt file alongside the video. If not, embed from YouTube for auto-captions, or burn captions into the export.

  6. 6
    Test playback as a member

    Open the lesson or post in an incognito window logged in as a test member. Check playback, audio, captions, and mobile rendering.

  7. 7
    Use embed or batch tools at scale

    For 10+ videos a month, switch to Loom embeds for quick lessons or install tools4skool.com for batch upload, scheduled video posting, and transcode status tracking.

Direct upload to Skool, step by step

Uploading to a Classroom lesson (the most common case):

  • Open your community as owner
  • Click Classroom, open the course, click the lesson you want to add video to (or create a new lesson)
  • Click the Add video button or video icon in the lesson editor
  • Browse to the file or drag and drop into the upload area
  • Skool shows an upload progress bar. Do not close the tab while it uploads.
  • After upload, Skool transcodes the video. Transcode time is roughly 1 to 3x the video length (a 30-minute video takes 30 to 90 minutes to transcode).
  • The video shows as Processing until transcode completes. Members cannot watch until it is ready.
  • When ready, the video appears in the lesson with native playback controls.

Uploading to a community post:

  • Click the new post box, select the video icon, browse to file
  • Upload progress shows inline in the post draft
  • Transcoding happens after you publish the post
  • Members see Processing if they open the post before transcode is done

Uploading as an event recording:

  • Open the event in the Calendar tab
  • Scroll to Recording, click upload, browse to file
  • Same transcoding flow as Classroom
  • RSVPed members get an auto-email when the replay is available

Embed from Loom, YouTube, Vimeo (often better than direct upload)

Direct upload gives you Skool's native player and keeps everything inside Skool. Embedding outsources the player to the source platform. Each has trade-offs.

When to embed:

  • Video is over 2 GB and you want a more reliable player
  • You need chapter markers (Loom and YouTube both support, Skool native player does not)
  • You want closed captions auto-generated (YouTube generates them for free)
  • You produce in batches and Loom or Vimeo workflows fit your team
  • You want analytics beyond what Skool shows (Loom and Vimeo both have detailed viewer analytics)

When to upload directly:

  • You want everything inside Skool, no external dependencies
  • The video is short and high-quality
  • You need to gate the video specifically by tier (embeds can leak via the source URL)
  • Closed captions are not critical (or you have SRT files ready)

How to embed:

  • Get the video URL from Loom, YouTube, or Vimeo (use Unlisted on YouTube for private content)
  • In the lesson or post body, paste the URL on its own line
  • Skool auto-detects and inserts an embedded player
  • For YouTube, use the URL format youtube.com/watch?v=xxx, not youtu.be/xxx (sometimes more reliable)
  • For Loom, the share URL works directly
  • For Vimeo, the URL works directly, including password-protected videos

Loom is the most popular workflow for community owners because record-and-paste is faster than export-and-upload. The Loom Chrome extension records, generates a URL, and you paste in seconds. Quality is good enough for screen-share lessons. For face-on-camera flagship content, direct upload usually wins.

Captions and accessibility

Roughly 40 to 60 percent of video viewers in 2026 watch with sound off, especially on mobile or in shared spaces. No captions equals roughly half your audience missing the audio content.

Skool's native player has limited caption support. As of 2026, some plans allow SRT file upload alongside the video, which the player displays as toggleable captions. Other plans do not, and you have to bake captions into the video itself (burnt-in subtitles).

Options for captions:

Generate SRT and upload. Use Whisper (free, open source), Descript, or Rev to transcribe the audio into an SRT file. Whisper runs locally and is free, quality is excellent in 2026. Rev costs roughly $1 to $5 per video and gives human-quality transcripts. Upload the SRT alongside the video in the lesson editor.

Embed YouTube instead of direct upload. YouTube auto-generates captions for free, members can toggle them, no extra work. The trade-off is your content lives on YouTube, which has its own discoverability implications.

Burn captions into the video. Export the video with subtitles permanently visible. Tools like Submagic, Captions.ai, or CapCut produce this output. Best for short-form clips where viewers cannot toggle. Worst for long-form because the captions are not removable and clutter the screen.

For community owners producing 4+ lessons a week, the Whisper-to-SRT workflow saves the most time long term. Set up once, run it on every export, upload the SRT alongside the MP4.

When uploads fail, the common causes

Connection drops mid-upload. The most common cause. Skool does not have resumable uploads in all builds, so a dropped connection means you start over. For files over 1 GB on a flaky connection, plug into ethernet or move to a stable wifi. Avoid uploading from a coffee shop.

File format Skool cannot transcode. Usually MKV or VP9 codec. Symptom: upload completes but stays as Processing for hours. Re-export as MP4 H.264 from your editor (HandBrake is the free fallback if you do not have an editor).

File size above the limit. Symptom: upload bar reaches 100 percent then errors out. Trim the video, lower the bitrate, or host externally and embed.

Browser cache or session issue. Symptom: upload starts and immediately fails. Hard refresh (Cmd+Shift+R), clear Skool cookies, try again. If still failing, try an incognito window.

Variable frame rate (VFR). Symptom: video uploads, transcodes, plays back with audio out of sync. Re-export with constant frame rate (CFR) at 30 fps.

Audio codec issue. Symptom: video plays but audio is silent. Re-export with AAC audio codec, not AC3 or MP3-in-MP4.

Skool service degradation. Symptom: all uploads failing across the board. Check Skool's status page or community feeds for outage reports. If it is platform-wide, wait an hour and retry.

Upload workflow at scale

For community owners producing 10+ videos a month, manual one-at-a-time uploads through the Skool UI become a real time sink. Each upload requires you to browse the file, watch the progress bar, wait for transcode, then open the next lesson and repeat.

Strategies that save time:

Batch record, batch upload. Record 4 weeks of content in one session, export overnight, queue all uploads in the morning. Even if you have to click upload one at a time, the parallel transcoding cuts the total wait.

Use Loom for quick lessons. Loom records in the cloud, the URL is available 30 seconds after you stop recording, you paste into Skool. Total time per lesson under 5 minutes including the recording itself.

Pre-transcode locally. Export from your editor at 1080p H.264 with a target bitrate of 8 Mbps. This gives Skool's transcoder a clean source and roughly halves the transcode wait time.

Schedule uploads overnight. If your internet is faster overnight (off-peak), queue uploads before bed. Skool keeps uploading even with the browser tab open in the background.

Use a Chrome extension for batch operations. tools4skool.com adds batch video upload to multiple lessons in one queue, scheduled video posting to the community feed, and a video-management view that shows transcoding status across all your content. Useful for owners running courses with 20+ lessons or producing weekly community videos.

The rule: if you find yourself spending more than 2 hours a week on video upload housekeeping, the workflow is broken. Either move to embeds, batch better, or automate.

Stop leaving DMs, churn, and revenue on the table.

tools4skool plugs the holes Skool ships with. Free plan forever, paid tiers from $29/mo.

Start free →Or book a demo
Free plan forever · no card required · 2-min setup

Frequently asked

Roughly 5 GB per file in Classroom lessons and event recordings, roughly 500 MB in community posts, and roughly 100 MB in DMs. These are approximate, Skool has changed them over time. Practically, files under 2 GB upload reliably on most connections. Anything above 2 GB sometimes fails mid-upload on weak wifi. For files larger than 5 GB, host on Vimeo or YouTube Unlisted and embed via URL.

Keep reading

How-to
how to add a course on skool
How-to
how to livestream on skool
How-to
how to post on skool
How-to
how to set up skool
Skool guide
skool features
See all How-to

Ready when you are.

Drop your email — we'll loop you in the day access opens.

Start free →Or book a demo
Free plan forever · no card required · 2-min setup
Tools4Skool — free plan foreverWelcome DMs, churn saver, pipeline
Start free →