---
title: "Particles"
description: "Make confetti, snow, smoke or copies of your artwork, and control how they move and bounce."
canonical: "https://terminal.lottiefiles.com/docs/particles/"
last_updated: 2026-10-29
---

# Particles

Make confetti, snow, smoke or copies of your artwork, and control how they move and bounce.

An emitter releases copies of one particle over time. Each copy has its own lifetime,
direction, speed, spin, size and opacity. You control the emitter in the rail (the Properties
panel in After Effects or Figma), and time it on the score (the timeline).

## Make an emitter

Open the command palette with `:` and choose a command:

| Command | Result |
|---|---|
| **Make particles** | With one layer selected, use that layer as the particle and put the emitter where it was. With nothing selected, make a confetti burst in the middle. |
| **Particles › Confetti burst** | A burst of spinning confetti. |
| **Particles › Sparkles** | Short-lived sparkles round the emitter. |
| **Particles › Snow** | Flakes drifting across the composition's width. |
| **Particles › Smoke puffs** | Puffs rising, growing and fading. |
| **Particles › Fireworks** | Repeated bursts in every direction. |

You can also click **Particles** in the left panel, or choose **Make particles** in a layer's
stage menu. Select one layer at most. A locked layer cannot become a particle.

With an emitter selected, a preset command changes that emitter instead of adding another.
Each creation or change is one undo step: `u` undoes it and `⇧U` puts it back.

## Select and aim

Click a particle on the stage to select its emitter. The cone shows the range of launch angles
and speeds. Its inner and outer arcs represent a quarter of a second of flight; very slow
emitters keep a minimum visible cone. A line or circle shows a wider birth area.

Drag the cone's tip to change direction and speed together. Hold `⇧` to turn in 15° steps.
The ranges keep their spread, except where a speed reaches zero.

Move, rotate, scale or animate the emitter as a layer. A moving emitter leaves a trail.
Your artwork becomes a composition of its own; each copy plays its animation from birth.
Deleting the emitter removes its baked particles too.

![Confetti in flight with the emitter's cone selected.](https://terminal.lottiefiles.com/docs/assets/shots/more-confetti-flight.png)

## The rail

Select the emitter to see **PARTICLES** below its transform rows. Scroll over the rail or
click **↓ more** to reach the remaining rows; **↑ more** goes back. Drag the divider on the
rail's left to widen it if values are clipped.

Drag a value to change it, or click it, type a value and press `⏎`. The mark before a
value keys it at the playhead: **·** is static, **◇** is between keys, **◆** is on a key.
Each end of a pair can be keyed separately. A particle takes the settings at its birth.

| Row | Values and meaning |
|---|---|
| Particle count | Copies made over the emitter's time and their file size, lit when it reached the most it makes (see [Limits and export](https://terminal.lottiefiles.com/docs/particles/#limits-and-export)). Appears after a bake. |
| **Preset** | **stream**, **confetti burst**, **sparkles**, **snow**, **smoke puffs**, **fireworks**. Resets the settings and keeps the particle. |
| **Particle** | Current artwork's name. Choose **dot**, **star**, **sparkle**, **confetti** or **puff** to replace it with a built-in piece. |
| **Emit** | **stream** releases copies one after another; **burst** releases a group together. |
| **Rate** | Stream only: 0–240 particles per second. |
| **Count** | Burst only: 0–500 particles per burst, as a whole number. |
| **Every** | Burst only: 0–600 seconds between bursts. 0 makes one burst. |
| **Lifetime** | Minimum and maximum seconds each copy lives. From one frame to 36,000 frames, shown in seconds at the document's frame rate. |
| **Angle** | Minimum and maximum launch angle, −36,000° to 36,000°, in the emitter's space. 0° is right, 90° down, −90° up. |
| **Speed** | Minimum and maximum launch speed, 0–10,000 px/s. |
| **Gravity** | Across and down, each −10,000 to 10,000 px/s². Positive down pulls towards the floor; across acts as wind. |
| **Spin** | −36,000 to 36,000°/s. Sets random spin in either direction. |
| **Scale** | Minimum and maximum size, 0–1,000% of the artwork. |
| **over life**, under **Scale** | Size at birth and death, each 0–1,000% of the chosen size. |
| **Opacity** | Minimum and maximum visibility, 0–100%. |
| **over life**, under **Opacity** | Visibility at birth and death, each 0–100% of the chosen opacity. End at 0% to fade out. |
| **Colour** | **as drawn** keeps the artwork's colours. **between two colours** picks between **from** and **to**, entered as `#rrggbb`. |
| **Shape** | **point**, **line** or **circle**: where copies are born. A line runs along the emitter's x axis; a circle fills a disc. |
| **length** / **across** | Line length or circle diameter, 0–10,000 px. Appears for the chosen shape. |
| **Seed** | Whole number 0–999,999. **next** advances it, wrapping to 0. The same settings and seed give the same flight. |
| **Add** | **+ collisions** adds bouncing controls. |

![The particle rail showing burst timing, lifetime, motion, size, opacity, colour and seed.](https://terminal.lottiefiles.com/docs/assets/shots/more-particle-controls.png)

## Presets

Choose a starting point before tuning values. The rail uses lower-case preset names.

![The particle rail with its six presets and five built-in particle pieces.](https://terminal.lottiefiles.com/docs/assets/shots/more-particle-presets.png)

| Preset | Motion | Piece when made without artwork |
|---|---|---|
| **stream** | A fountain thrown up, then falling back | **dot** |
| **confetti burst** | One burst of spinning pieces | **confetti** |
| **sparkles** | Twinkles in a disc, shrinking as they go | **sparkle** |
| **snow** | Flakes falling across the width with wind | **dot** |
| **smoke puffs** | Puffs rising, growing and fading | **puff** |
| **fireworks** | Bursts about a second apart, falling and fading | **sparkle** |

## Collisions

Click **+ collisions**, then scroll further down the rail. The floor starts on. Click **✕**
beside **Collisions** to remove the module.

| Row | Values and meaning |
|---|---|
| **Restitution** | Minimum and maximum share of impact speed kept on rebound, 0–1. At 0 it stops against the surface; at 1 it keeps that speed. |
| **Friction** | Minimum and maximum grip along a surface, 0–1. At 0 particles slide freely. |
| **Bounces** | Maximum rebounds per particle, a whole number from 0 to 64. After that it rests on a horizontal surface, slides along a wall, or passes through a circle. |
| **Edges** | Toggle **floor**, **ceiling**, **left**, **right** independently. |
| **Colliders** | Click rectangle or ellipse layers; selected names light up. The rail offers the first 12 candidates. A file can hold up to 16 active colliders. |

A rectangle catches particles on its sides and corners. An ellipse acts as a circle. Hidden
layers and layers outside their time do not catch particles. A moving layer catches particles
where it is as each flight starts.

Particles bounce at their edges, using half the smaller side of your artwork, or of a built-in
piece. They do not collide with one another. A particle lands where it meets a surface.
A rebound below half a pixel settles; friction slows sliding, and particles fall off the end
of a rectangle.

If a bake reaches its collision-work limit, remaining flight has no further collisions.
The rail says **bouncing stopped short**. Reduce particles, bounces or colliders and try again.
If baking fails, **not baked** gives the reason.

![The collisions module with Platform selected as a collider.](https://terminal.lottiefiles.com/docs/assets/shots/more-particle-collisions.png)

## Limits and export

Each emitter makes at most 500 particles over its time and emits for at most ten minutes.
Reduce **Rate**, **Count**, repeated bursts or the emitter's time to stay below the cap.
Shorter lifetimes reduce overlap, but do not reduce how many particles are born.

Each particle adds about a kilobyte. A three-second stream at 30 particles per second makes
about 90 particles. The rail's size is the estimate for your actual bake.

| Format | What you keep |
|---|---|
| Lottie `.json`, dotLottie `.lottie` | Keyed particles for playback, plus emitter settings you can edit when reopened. |
| Frolic `.vd` | Particle settings and baked motion as keys. Check other export warnings for your artwork. |
| Video and pictures | The rendered flight. |

See [Why particles become keys](https://terminal.lottiefiles.com/docs/concepts/particle-baking.md) and [Export](https://terminal.lottiefiles.com/docs/export.md).

## The copilot

Ask for an emitter from your layer or a preset, a different built-in piece, settings by name,
or a list of emitters. The `particles` tool has `make`, `set`, `preset` and `list` actions.
Its settings cover the emitter controls above; add and choose collision surfaces in the rail.
See [The copilot](https://terminal.lottiefiles.com/docs/copilot.md).

## Tasks and films

- [Make a confetti burst](https://terminal.lottiefiles.com/docs/how-to/make-a-confetti-burst.md).
- [Use your artwork as particles](https://terminal.lottiefiles.com/docs/how-to/use-artwork-as-particles.md).
- [Bounce particles off a platform](https://terminal.lottiefiles.com/docs/how-to/bounce-particles-off-a-platform.md).
- Watch: [Your first emitter](https://terminal.lottiefiles.com/first-emitter/), [Stream or burst](https://terminal.lottiefiles.com/stream-or-burst/), [Over a particle's life](https://terminal.lottiefiles.com/particle-life/).
- Watch: [Your own particle](https://terminal.lottiefiles.com/own-particle/), [Presets for the moment](https://terminal.lottiefiles.com/presets/), [Bounces](https://terminal.lottiefiles.com/bounces/).
