Upload SVG, change fill/stroke, color, size, and download.
<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 24 24" fill="#3b82f6" stroke="currentColor" stroke-width="2"><circle cx="12" cy="12" r="10"/></svg>SVG (Scalable Vector Graphics) icons are vector-based: they use paths and shapes instead of pixels. Unlike PNG or JPG, SVG scales to any size without losing quality. Icons stay crisp on retina displays and at any zoom level. SVG is the best choice for UI icons because it is lightweight, styleable with CSS, and accessible. Use the SVG to JSX converter to embed icons in React.
fill colors the interior of a shape; stroke colors the outline. stroke-width controls outline thickness. currentColor makes fill or stroke inherit the element's text color, so icons adapt to your theme. Most UI icon libraries (Lucide, Heroicons, Feather) use stroke="currentColor" so you control color via CSS color.
SVGs that resist color changes often use inline styles (style="fill: #000"), multiple paths with hardcoded fills, or gradients baked into definitions. Simple tools do a root-level replace; they may not reach nested elements or style attributes. For complex icons you may need to edit the SVG source, remove inline styles, or replace fills in each path. Pair with a CSS Gradient Generator if you need gradient fills.
Inline SVG in HTML: paste the SVG markup and control size via width and height. With currentColor, set color on the parent. In React, use the icon as a component and pass className. In Tailwind: className="w-6 h-6 text-blue-600". In plain CSS: .icon { width: 24px; height: 24px; color: inherit; }. Use fill or stroke in CSS when the SVG uses currentColor.
viewBox, the SVG may not scale correctly. Always include viewBox="0 0 24 24" (or the icon's native dimensions).width="24" height="24" prevents responsive sizing. Use CSS or omit for flexibility.fill="#000" on every path. Use currentColor so icons inherit color.Combine SVG icons with a Box Shadow Generator or Border Radius Generator when styling icon containers.
Click 'Upload SVG' and choose an .svg file. The markup will load into the editor. You can then change fill, stroke, and size and copy or download the result.
Some SVGs use inline styles or multiple fill/stroke values. The tool does a simple replace on the root fill/stroke. For complex icons you may need to edit the SVG source.
Explore these related free tools to enhance your productivity and workflow.
Convert SVG code to React-friendly JSX automatically
Generate CSS box shadows with custom offsets, blur, spread, color, and opacity
Create beautiful linear and radial CSS gradients with custom colors, angles, and stops
Create custom border radius values for all corners with individual or locked controls