Key Takeaways
- Video Upload is a separate field from both Voice Recording and Audio Upload. Voice Recording captures live mic audio, Audio Upload accepts audio files, Video Upload accepts pre-existing video files from the visitor's device.
- Max file size is 25MB, enforced both client-side and server-side, under both storage options. This is a separate limit from the File Upload field's 50MB cap.
- Storage is either FormsPlugin's own storage (default) or Google Drive via a self-deployed Google Apps Script web app — the same mechanism used by Audio Upload, Voice Recording, File Upload, and Image Upload.
- The Uploading text supports a [FileName] token that gets replaced with the actual filename during upload.
- Available on Pro and Scale plans, not Basic.
Overview
Forms Plugin has three fields that deal with audio or video, and all three do something different. Voice Recording captures live microphone audio directly in the browser. Audio Upload accepts a pre-existing audio file from a visitor's device. Video Upload does something neither of those does: it lets a visitor select and submit a pre-existing video file as part of a form submission. If you're looking for the live-recording field, the voice recording guide covers that one. If you need the audio file version, the audio upload guide is the right post.
This post is specifically about Video Upload. It covers what the field's settings panel actually controls, where submitted video files get stored, and the real use cases it's built for. The through-line across all of them: the visitor already has the video file on their device. They're submitting something they recorded or produced before reaching the form, not capturing anything in real time.
Quick Answer
- Video Upload, Audio Upload, and Voice Recording are three separate fields. Voice Recording captures live mic audio in the browser. Audio Upload accepts pre-existing audio files. Video Upload accepts pre-existing video files from the visitor's device.
- The default Field Name is
video-upload, the default Label is "Video", and the default Placeholder is "Click to upload video file". - Max Size is a hard 25MB cap enforced both client-side and server-side, under both storage options. This is a separate limit from the File Upload field's 50MB cap.
- Storage is either FormsPlugin's own storage (default) or Google Drive via a self-deployed Google Apps Script web app. It is not a one-click OAuth connection.
- Available on Pro and Scale plans, not Basic.
What is the Video Upload field?
It's one of 14 Advanced Fields in Forms Plugin, alongside File Upload, Phone Number, Country, Image Upload, Range Slider, Color Picker, Button Option, Rating, Promoter Score (NPS), E-Signature, Voice Recording, Audio Upload, and URL Source Collector. Drop it into a form and it gives visitors a file picker that accepts video files from their device and attaches the upload to the form submission.
The canvas component badge reads "Video Upload" with a blue play icon. In the Advanced Fields panel inside the plugin, it appears under the "Advance" tab, and the field panel header reads "Inserting into Video Upload" when selected.
The distinction from its two sibling fields is worth being direct about. Voice Recording opens a browser-based recording interface that uses the visitor's microphone, records in real time, and outputs MP3 or M4A. It has its own Record Settings sub-panel with duration controls and recording-state label strings. Audio Upload and Video Upload are both file submission tools: the visitor brings a file they already have and submits it through a standard file picker. The difference between those two is simply the media type. A form asking for a live voice note uses Voice Recording. A form asking for a submitted audio demo uses Audio Upload. A form asking for a submitted video reel, a demo clip, a testimonial, or an audition tape uses Video Upload.
What do the core settings control?
Field Name is the unique identifier that appears in your submitted form data, defaulting to video-upload. This is the key that shows up in your CRM field mapping, your email notification, or your webhook payload, so rename it if the default conflicts with another field or your integration expects a specific key name.
Label Name defaults to "Video" and Placeholder defaults to "Click to upload video file" — both the visible text a visitor sees on the form itself. Sub Text uses a template string, "Max {max} MB", where {max} gets replaced dynamically with whatever you've set as the Max Size in the Upload Settings panel. The helper text in the panel confirms this: "Use {max} for max file size." That keeps the Sub Text accurate automatically if you adjust the size limit later, without needing to update the string manually.
Required is a Yes/No toggle, defaulting to No. The Validation sub-panel adds two custom error message fields. Required Error lets you write a custom message for when a visitor tries to submit without uploading a file, and it supports {label} and {name} placeholders so the error can reference the field's own label or name without hardcoding them. Max Size Error handles the over-limit case and additionally supports a {max} placeholder that inserts the configured size ceiling directly into the error text, so the message stays accurate if you change the limit.
What does the Upload Settings panel control?
Upload Settings is a dedicated sub-panel with four controls: Max Size, an uploading state label, a spinner toggle, and the storage destination.
Max Size is a slider control, set to 25MB. This is a hard cap enforced both client-side and server-side. The browser validates the file size before the upload begins, and the server validates again on receipt. A file over the limit is rejected at both points. This is a separate limit from the File Upload field's cap, which sits at 50MB. Video Upload and File Upload are different fields with their own independent limits, and one doesn't carry over to the other.
The uploading state label defaults to "Uploading [FileName]...", where [FileName] is a token that gets replaced with the actual filename of the video being uploaded during the upload process. The panel helper text confirms: "[FileName] will be replaced with actual file name." This gives visitors real-time feedback showing the specific file in progress rather than a generic loading message. Show Spinner is a Yes/No toggle (defaulting to Yes) that controls whether a loading spinner appears alongside that label during the upload.
Storage is a dropdown with two options: "FormsPlugin (default)" and "Google Drive." The panel describes Google Drive as routing "through your own Apps Script web app," with a link to a setup guide.
Where does the uploaded video file get stored?
FormsPlugin default storage means Forms Plugin handles hosting on its end. No additional configuration is required to start receiving video uploads once the field is placed in your form. Files are stored and accessible via a URL that appears in your form submission data.
Google Drive storage requires more setup and works differently from what the name might suggest. Selecting Google Drive in the Storage dropdown reveals an Apps Script URL paste field with helper text: "Deploy the Apps Script template, then paste the /exec URL. Setup guide." That description is the key: this is not an OAuth connection where you click through a Google account authorization flow. You deploy your own Google Apps Script web app and paste the resulting /exec endpoint URL into the field settings. When a visitor submits a video file, Forms Plugin routes it through your Apps Script deployment to your Google Drive, not through a standard OAuth-connected account.
This same Apps Script mechanism applies across all upload-type Advanced Fields in Forms Plugin, including File Upload, Image Upload, Audio Upload, and Voice Recording. If you've already deployed the Apps Script web app for one of those fields on the same site, the Video Upload field reuses that same deployment. You don't need a separate Apps Script for each field type.
Once Google Drive is selected, a Link Type dropdown appears with two options. Downloadable returns a direct file URL that downloads the video when opened, useful when reviewers need a local copy for editing, review, or archiving. Preview only returns a Drive preview page URL that opens the file inside Google Drive's video player without triggering a download, which is cleaner for high-volume review workflows where recipients are watching, not archiving.
The Customize toggle (defaulting to Off) is described as "Reveal advanced folder controls: name override, per-field subfolder, date/time stamp." Enabling it exposes additional controls for how files are organized inside Google Drive, useful if you're routing video uploads from multiple forms into the same Drive and want submissions sorted by field, date, or a custom folder name rather than landing in a flat unsorted folder.
Can you style it and add conditional logic?
Every property is editable directly on the Framer canvas. The styling system is identical across all Forms Plugin fields.
Label Style controls whether the label is shown or hidden, the required indicator character (defaulting to *), the label font (Inter), and the label color (defaulting to 888888). Layout controls direction (Vertical or Horizontal) and gap between the label and input (defaulting to 8px). Input Style covers font, text color (333333 default), sub text color (999999 default), background (BBBBBB default), padding (12 top, 15 right, 12 bottom, 12 left), border style (Solid), corner radius (10), and shadow (Mixed).
Icon controls the upload icon: visibility toggle (defaulting to On), the icon itself (uploadable custom icon), color (0066FF default), size (18px), background (F5F5F5), and border (FFFFFF). Clear Button controls the dismiss control that appears after a file is selected: visibility toggle (defaulting to On), icon (uploadable), icon color (000000), icon size (12px), background (FFFFFF), and radius (8). Focus Style controls the focused-state border (3B82F6) and shadow. Error Style controls the error-state text color (DC2626) and font (Inter).
Conditions work identically to every other Forms Plugin field. The five available actions are Show/Hide, Required, Read-Only, Disable, and Value Reset, combined with AND/OR logic. The Source Field input takes the name of any other field in the form. Field Type is set to Text, Number, or Date depending on what the watched field is. Operators include Is Empty, Is Not Empty, Contains, Not Contains, Exact Match (Case Sensitive), Match (Case Insensitive), Starts With, Ends With, Length Greater Than, Length Less Than, and Regex. Full details are on the conditional logic feature page.
What are the real use cases for a video upload field in a form?
The right use cases are situations where a visitor has a finished video file to submit as part of an application, intake, or collection workflow — not live capture, not real-time recording. Video Upload is for forms where the visitor is delivering something they already made.
Video portfolio submissions. Motion designers, videographers, cinematographers, and directors applying for work or client projects. A creative agency intake form that asks applicants to submit a reel or a sample project clip rather than just a portfolio link.
Video testimonial collection. SaaS companies, agencies, and e-commerce brands collecting customer video testimonials as part of a post-purchase or post-project flow. A short video testimonial form with a name, email, and a Video Upload field keeps the submission structured rather than relying on people to send files over email.
Casting and audition submissions. Acting reels, showreels, and audition tapes submitted as part of a casting application. Keeps the submission in one place with all the accompanying form data (name, contact, role applied for) rather than scattered across email threads.
Job applications requiring a video introduction. Some hiring processes, particularly in client-facing, sales, or media roles, ask candidates for a short video introduction alongside a resume. A Video Upload field adds that to the same application form that already collects the other fields.
UGC content intake. Brands collecting user-generated video content, product reviews, unboxing videos, or creative submissions from customers or community members. A structured intake form with a Video Upload field and consent fields is cleaner than a public email address or a file-sharing link.
Coaching and training platform submissions. Online coaches or training platforms that review submitted video exercises as part of a program. A student records their exercise session, submits it through a form, and the coach reviews the file with the accompanying context from the other form fields.
Real estate and property walkthroughs. A property management or listing platform that accepts video walkthroughs from property owners as part of a listing submission form. The video arrives with the address, description, and other listing details already attached.
The common thread: the visitor has a video file on their device before they open the form. They're submitting something finished, not recording something new.
What plan do you need?
Pro or Scale. Video Upload is not included on the free Basic plan. Current pricing is one-time and lifetime — check that page for the current figures before making a decision. Both Pro and Scale include the field, so the choice between them comes down to how many sites you're running and whether you need the commercial license for client work, not whether you get Video Upload at all. The features page lists the full Advanced Fields set if you want to see everything included alongside it.
Frequently asked questions
What is the difference between Video Upload, Audio Upload, and Voice Recording in Forms Plugin?
Voice Recording captures live audio from a visitor's microphone inside the browser, with its own recording interface, duration controls, and MP3/M4A output settings. Audio Upload accepts a pre-existing audio file from the visitor's device. Video Upload accepts a pre-existing video file from the visitor's device. All three are separate Advanced Fields with different panel structures and different use cases. A form asking for a live voice note uses Voice Recording. A form asking for a submitted audio demo uses Audio Upload. A form asking for a submitted video reel, clip, or testimonial uses Video Upload.
What video file formats does the Video Upload field accept?
The field uses accept="video/*" and validates that the uploaded file has a video/ MIME type, so it accepts any video format the browser recognises as a video file — MP4, MOV, WebM, AVI, MKV, and others. There is no hardcoded allowlist restricting it to specific extensions. If the browser classifies the file as a video, the field will accept it.
Is the 25MB Video Upload limit the same as the File Upload field?
No. Video Upload has its own hard 25MB cap enforced client-side and server-side under both storage options. The File Upload field is a separate field with its own separate limit, which sits at 50MB. They're independent fields with independent limits, and one doesn't carry over to the other.
Does Google Drive storage for Video Upload require a Google account connection?
Not through OAuth. Google Drive storage requires deploying your own Google Apps Script web app and pasting the resulting /exec URL into the Apps Script URL field in the Upload Settings panel. It's a self-hosted routing mechanism, not a standard account link. The same setup applies across all upload-type Advanced Fields in Forms Plugin, so if you've already deployed the Apps Script for Audio Upload, File Upload, or Voice Recording on the same site, that deployment works for Video Upload as well.
Can I show the video upload field only for certain form submissions?
Yes, using the same conditional logic system every other Forms Plugin field uses. The Conditions sub-panel supports Show/Hide, Required, Read-Only, Disable, and Value Reset actions, triggered by AND/OR rules across a full operator set including Is Empty, Is Not Empty, Contains, Exact Match, and Regex. For example, show the Video Upload field only when a visitor selects "video submission" from a content type dropdown earlier in the form, and keep it hidden for all other selections. The conditional logic page has the full rule builder details.
Bottom line
Video Upload is for forms where a visitor submits a video file they already have — a reel, a testimonial, an audition clip, a property walkthrough. It is not a recording tool, and it shouldn't be confused with Voice Recording (live mic capture) or Audio Upload (pre-existing audio files). The 25MB cap applies under both storage options, Google Drive storage means deploying your own Apps Script endpoint rather than clicking through OAuth, and that same deployment works across every other upload-type field in Forms Plugin. Available on Pro and Scale, with styling and conditional logic working identically to every other field in the plugin.
Ready to build smarter Framer forms?
Forms Plugin gives you everything covered in this article - natively, inside Framer.
Get Forms Plugin




