What are Uploads (Attachments) in WordPress?
In WordPress, an upload is any file (image, document, audio, or video) you add through the dashboard or block editor. WordPress stores the file in your site’s uploads directory and registers it as an attachment, a built-in post type with its own title, caption, and description. Files copied over FTP aren’t registered until you import them.
More About Uploads
WordPress stores every file you upload as an "attachment," one of its built-in post types, and it supports formats such as JPG, PDF, DOC, MP3, and MOV. From the WordPress dashboard, you can upload files to a post, a page, or straight to the Media Library.
From upload to attachment
The upload is the file itself. The attachment is the record WordPress registers in its database for every dashboard upload, using its built-in media post type; that record is what the parenthetical in this term's title refers to. Attached and unattached states, and where the files live on the server, are covered in our attachment entry.
Choosing a block for your upload
Match the block to what visitors should do with the file:
- Image, Video, or Audio block: displays the media on the page itself.
- File block: offers the file as a download, the right choice for documents like PDFs.
- Media Library (Media > Add New): stores files you're staging for later, without inserting them anywhere.
For the download case, insert a File block while editing a post or page, then upload a file or pick one from the Media Library. The block editor adds a Download button automatically; you can change its text and background color. Title, caption, and description live in the file's attachment details, which you can edit in the Media Library (images also take alt text there).
Uploading from the dashboard vs. FTP
A dashboard upload does two jobs at once: it stores the file on your server and registers it in the Media Library. An FTP upload does only the first. Files copied over FTP or SFTP sit on the server but stay invisible to the Media Library until you register them, for example with WP-CLI's wp media import command, which creates attachments from local files or URLs.

The rule of thumb: use the dashboard for anything you'll insert into content, and use FTP for bulk transfers or for files too large for your upload limit. A folder of images on the server and an empty Media Library is the classic symptom of a skipped import.
Allowed file types and upload limits
You can upload any supported file type to the Media Library and reuse it whenever you create content. WordPress rejects file types it doesn't allow: executables and other risky formats are blocked by default, and the editor shows an error notification for unsupported uploads. Before a bulk upload, check both limits: which file types your site accepts, and how large a single file can be. The FAQs below cover each.
Frequently Asked Questions
- The effective limit is the lowest of several caps: PHP settings such as upload_max_filesize, plus any web server, network, or site-level limit. Media > Add New shows your current maximum. Ask your host to raise it, or move big files by SFTP and register them afterward with wp media import.
- Because the file's type isn't on WordPress's allow-list; core strips risky formats (it removes .exe outright), and SVG isn't allowed by default either. Convert or zip the file, or extend the allowed types with a plugin or the upload_mimes filter, cautiously: the restriction protects your site.
- No. The media item stays in the Media Library. When an attached file's parent post is deleted, WordPress attaches the media item to the deleted post's parent if one exists; otherwise it becomes unattached and you can re-attach it to another post later.
Powerful WordPress Hosting
Reliable, lightning-fast hosting solutions specifically optimized for WordPress. Find the perfect plan for you by clicking below.
WordPress Hosting Plans