Upload
The upload icon represents a symbol used to indicate the action of transferring data or files from a local device to a remote server or cloud storage.
Exports at 24 × 24 px
Code
Upload in your framework
In any framework. Customize it above, and the code follows.
export const UploadIcon = (props: React.SVGProps<SVGSVGElement>) => (
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" {...props}>
<path fill="currentColor" d="M12 18.16V5.91l5.25 5.25l.75-.66L11.5 4L5 10.5l.75.66L11 5.91v12.25zM3 19h1v2h15v-2h1v3H3z"/>
</svg>
);Other libraries
Upload in 8 more libraries
Each library draws it its own way. Open one to compare.
Material Design Light
More like it
Icons that share its tags, in the same style.
Search Material Design Light
Skip the copy and paste. With Pro, your AI agent finds and installs any Material Design Light icon from a prompt.
Get ProTags
Browse by tag
Upload is tagged UI, action, file and 3 more. Related tags follow; each opens its icons from every library.
Pricing
Material Design Light MCP, with Pro
Ask for Upload or any of 304 Material Design Light icons and your agent installs it. The MCP comes with every Pro plan, with 6,000+ blocks and 14 premium templates. The icons stay free.
4.9/5 out of 5 · 150+ reviewsfrom 150+ founders and developers.
- Secure checkout via Stripe
- Code lives in your repo
- Keep what you've shipped if you cancel
- License terms
FAQ
Frequently asked questions
What the Upload icon means and where it's used, then how to install, style, label and license it.
The upload icon represents a symbol used to indicate the action of transferring data or files from a local device to a remote server or cloud storage. It is part of the Material Design Light library, categorized under Material. This icon is essential in user interface design as it signifies the initiation of a file transfer process.
In software applications, this icon appears in various contexts such as in file management systems, cloud storage services like Google Drive or Dropbox, or in web applications that require file uploads. For instance, users might encounter this icon when uploading files to a server or sharing content with others.
From a UX perspective, the upload icon communicates the ability to transfer data or files, enhancing interface functionality and user productivity. It provides a clear visual cue that helps users understand the functionality of interactive elements, making it easier for them to accomplish tasks.
Upload is one of 304 icons in Material Design Light, made by Pictogrammers and released under Open Font License. It is drawn on a 24 × 24 grid.
Sign in (it's free), then open Get icon, Install with shadcn CLI, and pick your package manager to copy the command. It adds UploadIcon to components/icons/mdi-light-upload.tsx: one file, a size prop (24 by default) and every SVG prop, with no icon package.
Copy it as React (from Get icon, or the Code section): a typed UploadIcon component you paste into your project, with no package to install. Only the icons you import reach your bundle. It works in Next.js and any React app.
Open Get icon, then Copy as code, and pick Vue, Svelte, Angular, Solid or Preact; the Code section shows each one too. Every version is one self-contained component with the SVG inside, and SVG and data URL copies are there for plain HTML and CSS.
With Pro, the shadcn.io MCP server lets Claude Code, Cursor or any MCP client find the Upload icon, or any of 304 Material Design Light icons, and install it from a prompt.
It's drawn in currentColor, so it takes the text color wherever you use it: a class like text-primary recolors it. To bake a color in, set one in Customize before you copy.
Set width and height on the component, or a class like size-6. It's drawn on a 24 × 24 grid, so it stays sharp at any size. Customize also sets the size it exports at, its padding and rotation.
Yes. It follows the text color, so with text-foreground (or any theme token) it changes with your light and dark themes. The icon is a vector, so it needs no separate dark asset.
Next to a visible label it's decoration: add aria-hidden="true" so screen readers skip it. Standing alone, as in an icon button, give the button a name instead, like aria-label="Upload", so screen readers say what it does.
Yes. UploadIcon passes every SVG prop to the svg element, so <UploadIcon aria-hidden="true" /> works, and so do role="img" with aria-label, or a title child, when it carries meaning on its own.
Yes. Open Get icon, then Download file: SVG for code or design tools like Figma; PNG, WebP or JPEG at 512px; or an ICO favicon with 16, 32 and 48px inside. Each one uses what you set in Customize.
Yes. The Open Font License allows commercial use; the icons can't be sold on their own. The full terms are in the license, linked on this page.
No visible credit is required: Open Font License only asks that you keep the license notice if you ship the icons' source files. Icons installed with the shadcn CLI already start with a comment naming Material Design Light, Pictogrammers and the license.
Yes. Copying and downloading it is free, and the shadcn CLI install only needs a free account.
8 other libraries draw an icon called Upload. The Other libraries section on this page shows each one, so you can compare them and open the one that fits your style.
Its tags are UI, action, file, storage, cloud and sharing. Each tag page lists the icons that carry it from every library, which is the quickest way to find a match for Upload in another set.
4.9 out of 5 from 150+ developers
Install Upload from a prompt
MCP, 6,000+ blocks and 14 premium templates in every Pro plan. The icons stay free.
Get Pro