MUTools

CSS Shadow Generator

CSS Shadow Generator is a free box-shadow generator for building shadow CSS through a visual editor. Adjust offset (X and Y), blur, spread, color, and opacity with sliders to generate box-shadow and filter: drop-shadow() CSS in real time.

Mode

Output type

Shadow layer settings

  • 1
25%
0px
10px
20px
-4px

Presets

CSS Code

.shadow {
  box-shadow: 0px 10px 20px -4px rgba(15, 23, 42, 0.25);
}

All shadow generation runs in your browser, and nothing you enter is sent to a server.

Preview

Sample element

Background
Element color
Shape
16px

About CSS Shadow Generator

CSS Shadow Generator is a free box-shadow generator for building shadow CSS through a visual editor. Adjust offset (X and Y), blur, spread, color, and opacity with sliders to generate box-shadow and filter: drop-shadow() CSS in real time.

You can stack multiple shadow layers, so anything from soft, subtle shadows to rich, layered depth is possible. Each layer can be switched to inset, and you can reorder layers by dragging. Colors accept HEX as well as pasted rgb() / hsl() values.

Use the Shadow layers / Neumorphism toggle at the top to switch between two independent modes, each with its own output. In Shadow layers mode, apply soft shadows, Material-style elevation, floating, hard shadows, long shadows, and glow presets with one click. In Neumorphism mode, set a base color and adjust the distance and intensity to generate neumorphic (soft UI) shadows in real time. Change the preview background, element color, and shape (rounded, circle, square) to see exactly how the shadow looks while you tweak it.

Copy the result as CSS (box-shadow / filter), CSS variables, a Tailwind config, or SCSS variables in one click, then paste it straight into your code. Click "Copy URL" to get a shareable link that reproduces your current setup—handy for sharing with your team or bookmarking. All shadow generation runs locally in your browser, and nothing you enter is sent to a server. Runs entirely in your browser.

How to use

  1. Choose the output type (box-shadow or drop-shadow). box-shadow supports spread and inset, while drop-shadow follows the actual shape of the element.
  2. Add a layer and adjust the X/Y position, blur, spread, color, and opacity with the sliders. Drag layers to reorder them, and toggle inset for inner shadows.
  3. In Shadow layers mode, apply a preset (soft, Material, floating, hard, long shadow, glow) with one click. For neumorphic depth, switch to Neumorphism mode and adjust the base color, distance, and intensity to generate the shadow in real time. Change the preview background, element color, and shape to check the result.
  4. Switch between the CSS, CSS variables, Tailwind, and SCSS tabs under "CSS Code," then use "Copy CSS Code" to grab the code and paste it into your project. Use "Copy URL" to share your setup.

Use cases

  • Designers and coders who want soft shadows on buttons, cards, or modals and need ready-to-paste box-shadow CSS in seconds.
  • Front-end engineers building rich, layered depth or inner shadows by combining multiple layers and inset.
  • Anyone who wants to generate neumorphism (neumorphic UI) shadows quickly from a base color.
  • Developers who want to drop shadows straight into code as a Tailwind boxShadow config, CSS variables, or SCSS variables.
  • Anyone who wants to hand a finished shadow to their team via a share URL or reproduce the same setup later.

Notes

  • All shadow generation runs in your browser, and nothing you enter is sent anywhere.
  • drop-shadow (`filter: drop-shadow()`) does not support spread or inset. Those apply only when box-shadow is selected.
  • Stacking multiple drop-shadows applies each shadow on top of the previous result, which looks different from comma-separated box-shadow.
  • The share URL includes the output type, each layer (position, blur, spread, color, opacity, inset), and the preview settings. Opening the URL reproduces the same shadow.

FAQ

Is anything I enter sent to a server?
No. All shadow generation happens entirely in your browser, so you can use it with confidence even for brand colors or palettes from internal work.
What is the difference between box-shadow and drop-shadow?
box-shadow applies a shadow to the element's rectangular box and supports spread and inset. filter: drop-shadow() follows the element's actual shape (such as a transparent PNG or an icon outline) but does not support spread or inset. This tool lets you switch between both as you work.
Can I create neumorphism (soft UI) shadows?
Yes. Switch to Neumorphism mode at the top, pick a base color, and adjust the distance and intensity to generate two layers in real time: a light highlight and a dark shadow. You can switch between raised and pressed (inset), and the element and background share the same base color. This is a separate output from Shadow layers mode.
Can I create multiple shadows or inner shadows?
Yes. Adding layers stacks multiple comma-separated box-shadows that you can reorder by dragging. Switch any layer to inset to turn it into an inner shadow.
Can I export to Tailwind or CSS variables?
Yes. The "CSS Code" tabs let you switch between CSS (box-shadow / filter), CSS variables, Tailwind (boxShadow / dropShadow), and SCSS variables, and the "Copy CSS Code" button copies the whole snippet so you can paste it straight into your project.
Can I share or save the shadow I made?
Click "Copy URL" to get a shareable link that includes the output type and every layer's settings. Opening that URL reproduces the same shadow, which is handy for sharing with your team or bookmarking.