# Why Your Prototype’s Sounds Feel Amateur (and the Fix Isn’t New Sounds)
_July 31, 2026 · 6 min read · by Systergon_
> Someone picks a nice click. Someone else finds a lovely chime. A third person grabs an error buzz from another pack. Each choice is defensible; together they sound cheap. It is almost never the clips — it is that they are all at different levels. A practical guide to LUFS, why peak normalisation is the wrong tool, how to pick a target, and how to keep a growing sound set on it.
Tags: Figma, Sound, Craft
URL: https://systergon.com/blog/figma-prototype-sound-loudness-lufs
---
[Install Sound Kit — it’s free →](https://www.figma.com/community/plugin/1398310751744117050) [See the loudness feature](https://systergon.com/sound-kit/features/loudness-target)

Here is a thing that happens to almost every product that adds sound. Someone picks a nice click for buttons. Someone else finds a lovely success chime. A third person grabs an error buzz from a different pack. Each choice is defensible. Put them in one prototype and the result sounds cheap — and nobody can quite say why.

It is almost never the clips. It is that **they are all at different levels**.

## The problem, precisely

Sounds sourced from different places are mastered to different loudnesses. A chime from one library might sit six or eight decibels above a click from another. In isolation you do not notice, because you adjust. In sequence you absolutely do: the success chime feels like it is shouting, the error feels timid, and the whole set reads as assembled rather than designed.

Worse, the usual fix makes it worse. People reach for a volume slider and set each sound by ear, once, in a quiet room, on good headphones. On a phone speaker at 40% volume in an office, those judgements do not survive.

![Three sound clips at wildly different levels shown as waveforms, then the same three normalised to a single −16 LUFS target so their perceived loudness matches](https://systergon.com/blog/figma-prototype-sound-loudness-lufs/images/loudness-drift.svg)

## Why peak level is the wrong measure

The instinct is to normalise to **peak** — make the loudest sample in every file the same. This does not work, because loudness is not peak. A short sharp click can peak at exactly the same value as a sustained chime and sound dramatically quieter, because there is far less energy over time and our hearing integrates.

The measure that matches perception is **LUFS** (Loudness Units relative to Full Scale). It weights by frequency the way your ear does and integrates over time, so two clips at the same LUFS actually _sound_ equally loud — which is the only property you care about.

> Rule of thumb: normalise to LUFS, then check peaks separately so nothing clips. Peak is a safety limit; LUFS is the design decision.

## Picking a target

There is no universal number, but there are sane defaults, and the important thing is that _every sound in your product uses the same one_. Broadly:

- **UI feedback sounds** — taps, toggles, sends — sit quietly. They accompany an action the user already knows they took, so they only need to confirm, not announce.
- **Notifications** can sit a little louder, because they have to reach someone who is not looking at the screen.
- **Errors** should _not_ be louder than everything else. Loudness reads as alarm, and most errors are not emergencies. Make them distinct in timbre, not volume.

Sound Kit ships platform presets for iOS, Android and web, so you can take the target from your [platform palette](https://systergon.com/sound-kit/help/platform-palette) instead of inventing one. Set it once and every sound you normalise lands on it.

## Doing it in Figma

In the Sound Kit editor, open a sound, set the loudness target, and apply. The LUFS reading updates so you can see it land. Repeat for the set — or, better, let the audit find the outliers for you.

![The Sound Kit editor with a sound loaded, showing the waveform and the loudness target control](https://systergon.com/sound-kit-help/edit.webp)

That last part is the bit people skip and then regret. Normalising once is a chore you will do; keeping a set normalised as it grows over months is a discipline nobody sustains manually. So the **Consistency Report** checks it for you: scan the file and it reports the loudness spread across every sound in it, names the clips sitting outside your target, and offers to normalise them in place.

![The Sound Kit Consistency Report listing loudness drift findings alongside duplicate-role and missing-sound issues](https://systergon.com/sound-kit-help/consistency.webp)

The same report catches the two other failures that travel with loudness drift — the same role using three different clips, and a screen in a flow that never got its sound — because they all come from the same root cause: sounds being chosen one at a time, by different people, with no way to see the set.

## The two things loudness will not fix

Level is the biggest lever, but it is not the only one. Two others matter enough to mention:

**Harshness.** A clip can be at exactly the right loudness and still be unpleasant, because too much of its energy sits in the frequencies that fatigue fastest. Switch the editor to the [spectrogram](https://systergon.com/sound-kit/help/spectrum-view), find the band, cut it with EQ. This is what separates a sound you tolerate from one you stop noticing — which for UI audio is the goal.

**Startle.** A very fast attack reads as alarming regardless of level. Sound Kit’s [accessibility check](https://systergon.com/sound-kit/help/accessibility-check) flags clips that spike too fast or sit too bright for something a user hears forty times a day. A sound that gets your audio muted permanently has failed completely, however well-chosen it was.

## The fifteen-minute version

If your product already has sounds and they feel wrong, here is the whole intervention:

1. Pick one loudness target — take it from your platform palette.
2. Scan the file and open the Consistency Report.
3. Normalise every clip it flags as drifting.
4. Run the accessibility check on the three sounds that fire most often.
5. Save them as tokens so the next person inherits the decision instead of re-making it.

That is usually the difference between a sound set that feels assembled and one that feels designed — and it does not require replacing a single clip.

[Install Sound Kit — it’s free →](https://www.figma.com/community/plugin/1398310751744117050) [Read the loudness guide](https://systergon.com/sound-kit/help/loudness-target)