Specula app icon

Workflow · Mastering

A master that survives delivery.

A master can sound right on your monitors and still arrive wrong. Specula reads the per-platform gain each streaming service will apply, checks the true peak, loudness range, stereo width, and phase that decide whether it holds together at delivery, and lets you audition the file the way Spotify or Apple Music will actually play it, before you upload.

macOS EBU R128 True peak Stereo & phase Per-platform gain

7-day trial · one-time purchase · macOS 14+

Specula's main window analysing a stereo master: stacked waveform, inferno spectrogram, loudness curve, FFT spectrum, and a Lissajous phase scope.
One window, every delivery number. Waveform, spectrogram, loudness curve, FFT, and phase scope on a single master.

Sounds right, fails at delivery

The master is finished. Whether it survives Spotify, Apple Music, and the rest is a separate question, one your DAW doesn't answer.

Three things go wrong between "done" and "uploaded," and none of them are audible on a quiet pass through your monitors. The integrated LUFS overshoots and Spotify turns the track down. The master is quieter than reference and Apple Music dims it, or leaves it exactly where it is, depending on the platform. And a "stereo" file is secretly mono on the verses or out of phase in the bridge, so it collapses on a phone speaker. Each of these is a number the file already contains. Specula reads them out so the delivery condition is on screen, not a surprise after upload.

GainEach streaming platform applies its own gain to hit its reference. Specula shows the exact dB it will apply to your master, per platform.
PeakThe ceiling is the inter-sample peak, not the sample magnitude, read on the 4× oversampled true peak (dBTP), the value the platform actually limits against.
WhereSet the TP threshold to your delivery ceiling and every spot the master breaches it lights up on the waveform, so a single over-ceiling number becomes the exact moments to go fix.
PhaseMid/side correlation and a Lissajous phase scope catch the mono-collapse and out-of-phase content a stereo monitor hides.

The workflow

Load to receipt in four steps. One file, every delivery number, then a PDF.

1 · Load & read the platform gain
Open the master and set Mode to Music in the info panel. The Loudness Targets panel shows one row per platform with the gain it will apply: a mix at −10 LUFS reads Spotify −4 dB (Spotify turns it down 4 dB to reach its −14 LUFS reference), Apple Music −6 dB, YouTube −4 dB. The dot is green within ±1.5 dB of zero, yellow within ±4 dB, orange beyond. Pick up to four targets per mode in Settings → Targets.
2 · Check peak, range, stereo, phase
The Loudness sidebar carries integrated LUFS, true peak (4× oversampled dBTP, turns red above −1 dBTP), sample peak, and LRA live. The M/S section plots the mid/side Pearson correlation (+1 mono, 0 natural stereo, −1 out of phase) with a plain-English hover label; the Lissajous phase scope shows out-of-phase content at a glance. A separate triangle on a target row warns when the true peak breaches that platform's ceiling.
3 · Audition at the target
Every target row has a waveform-circle toggle. Press it and Specula matches playback to that target: gain offset = target − source LUFS, with a 5 ms lookahead true-peak limiter at the target's dBTP ceiling (enforced on the 4× oversampled inter-sample peak, not just the sample magnitude). Hit play and hear the master the way the platform will play it. The loaded buffer is never modified; release the toggle to restore unity gain.
4 · Commit to the target (optional)
When you want to render the master at the platform reference rather than just hear it, integrated targets (music streaming, broadcast) and dialog-gated targets (VOD, streaming podcasts) carry a second Normalize button (the up-to-line icon next to the Match toggle). Press it and Specula opens Edit mode with the Normalize section pre-filled to that target. The panel states its Basis (Integrated LUFS for music and broadcast, Dialog-gated LKFS for VOD and podcast) so you know which loudness is targeted, with a Now / Target / Gain readout and the dBTP ceiling as the only editable field. Review, click Apply, and export: the whole file is shifted by one uniform gain, then a two-pass true-peak limiter holds the ceiling. It lands on the 16-level undo stack and writes a new file. When the level is already where you want it and only the peaks breach the ceiling, the row's Limit TP button caps the inter-sample peaks in one click without touching loudness, the same as the Normalize button but for a true-peak overage. And because Normalize and Limit TP both respect a time selection, you can tame one hot passage without re-rendering the whole master. Only the ACX RMS target stays compliance-only with no Normalize button, since a gain can't satisfy its noise-floor requirement. More in the guide.
5 · Export the report
Export the receipt: ⌥⌘E for PDF, ⇧⌘E for JSON. The full-file report populates the complete grid the moment the file loads: integrated LUFS, 4× oversampled true peak, sample peak, LRA, Max Momentary / Short-term, DR, and per-channel peak / RMS / crest. Each target row carries its verdict, so a client or label reads the per-platform numbers without opening Specula.

Not every platform boosts

The truth about quiet masters. Apple Music's Sound Check, YouTube, and Tidal only turn loud tracks down; they leave a quieter-than-reference track exactly where it is. So a master at −18 LUFS doesn't get pushed up to Apple Music's −16 reference, it plays at −18. On those three platforms Specula shows a quiet master as "as-is" in green.

The platforms that do boost. Spotify (in its default mode), Amazon Music, Deezer, and SoundCloud raise quiet tracks peak-limited to reach their reference, so for those rows the +X dB number is real and Specula shows it unchanged. The distinction matters because it changes what you do next: a master that reads "as-is" on Apple Music but "+3 dB" on Spotify is being treated as two different deliverables by two services, and only one of them is touching your level.

The Music catalog covers Spotify (−14 LUFS), Apple Music (−16), YouTube (−14), Tidal (−14), Amazon Music (−14, −2 dBTP ceiling), Deezer (−15), SoundCloud (−14), and the vendor-neutral AES TD1008 (−18). Each row's subtitle states whether it's symmetric or "turns down only," so the behaviour is on the row, not in your head. The live panel updates as the file plays; the full catalog with references, tolerances, and true-peak ceilings is in the user guide.

A quiet master in Music mode: Apple Music, YouTube, and Tidal read 'as-is' in green while Spotify shows a real upward gain.
Not every platform boosts. Apple Music, YouTube, and Tidal leave a quiet master as-is (green); the platforms that do boost show the real gain.

See it in Specula

A loudness target row with match-to-target engaged, playing the master at the platform reference through a true-peak limiter.
Audition at the target. Match playback to a platform's reference and true-peak ceiling. The loaded file is never modified.
Specula loudness sidebar: integrated LUFS, max momentary and short-term, loudness range, 4× oversampled true peak, and sample peak.
The delivery numbers, live. Integrated LUFS, LRA, and 4× oversampled true peak update as the file plays.
Stereo width readout plotting mid/side correlation across the master with zone colouring from mono to out-of-phase.
Stereo image over time. Mid/side correlation flags the mono-collapse and out-of-phase sections a stereo monitor hides.

Ship the master with confidence

Specula is the pass between "the master is done" and "it's uploaded." It won't master the track for you. It tells you the exact gain each platform will apply, whether the true peak survives the ceiling, and whether the stereo image holds up in mono, before a single service touches the file.