One-listen voice notes

Say it once.

Record a voice note and send the link. It plays one time, then it’s gone — deleted from our server the moment it’s delivered. We never hear it: it’s encrypted in your browser with a key that only lives in the link.

0:00

Tap to record · up to 1 minute · your browser will ask for the microphone

How it works

What it is

A voice note with a built-in goodbye.

Zecho records in your browser, encrypts the recording before it leaves your device, and gives you a link. The first person to press play hears it; at that moment the encrypted file is deleted from our server. Nobody plays it twice — not the listener, not a forwarded link, not us.

Unplayed notes don’t linger either: they expire after 24 hours and are wiped.

  • Things you’d rather say than type. A thank-you, an apology, a quick “I’m proud of you”.
  • Details that shouldn’t sit in a chat log. A door code, directions, a name — heard once, not archived.
  • Know if it landed. Your private status link shows whether it was played, and lets you unsend it.
  • No accounts. The listener needs nothing but the link and a browser.

What you’re looking at

The ring listens with you.

Everything on the stage is drawn from your microphone or the note itself, analysed locally with WebAudio. Nothing about it is sent anywhere.

Slow ripples

Idle decoration around the record button — not data.

Bending ring

Your live sound across 64 frequency bands, low notes at the top and bottom, from an AnalyserNode in this tab.

Coral arc

Recording time used, against your limit (1 minute free, 10 with the vault).

Ring of bars

The recording itself: one bar per slice of the note, height = how loud that moment was.

Drifting particles

While a note plays, bars the playhead passes break off and drift away. That part has been heard and won’t come back.

A single point

Sealed: encrypted in this browser and uploaded as ciphertext.

How it works

The key travels in the link. The note travels once.

  1. 01

    Record

    MediaRecorder captures Opus audio (AAC on Safari). It stays in this tab’s memory.

  2. 02

    Encrypt

    A random 256-bit key K. The recording is sealed with AES-256-GCM using a key derived from K by HKDF. A passcode, if set, is stretched with PBKDF2 (310,000 rounds) and mixed in.

  3. 03

    Upload

    Only ciphertext plus SHA-256 hashes of tokens derived from K go to the server. K goes after the # in the link — browsers never send that part.

  4. 04

    Claim

    The listener’s browser proves it holds the link. The server atomically renames the file, streams it, and deletes it — one step, so a second request finds nothing.

  5. 05

    Play

    Decrypted in memory and played without a seek bar. When it ends, the page lets go of it.

sender’s browserrecords · encrypts Zecho serverciphertext, until first play listener’s browserdecrypts · plays once

Link previews are safe. Chat apps that unfurl links only load the page. Playing needs a tap and the key from the fragment, so a preview bot can’t use up your note.

One shot, really. If the listener’s connection drops mid-download, the note is gone. That’s the trade-off for a server that keeps nothing.

Expiry. Unplayed notes are swept every minute after they expire (24 hours free; 1 hour to 7 days with the vault).

Trust model, plainly

What we can see — and what we can’t.

We can see

  • That a note exists, its size (roughly its length), when it was made and when it expires.
  • Whether it has a passcode, and when it was played or unsent.
  • Your IP address — in memory only, for rate limiting. Not written to disk or logs.
  • Your wallet address, if you sign in for the vault.

We can’t see

  • The audio. Ever. We only hold ciphertext, and only until the first play.
  • The key in the link, or your passcode.
  • Who the listener is — there are no accounts.
  • Anything after the play: the file is deleted as it’s delivered.

What “one listen” does not mean

  • It limits our copy, not people. A listener can record the audio with another device. Send what you’d be comfortable being kept.
  • Whoever has the link first, wins. Anyone holding the link can play it once. A passcode (vault) adds a second thing they need.
  • You trust the page. Like any web app, the server delivers the JavaScript that does the encryption. Our scripts are unminified and readable.

Built with

Small, native, honest parts.

MediaRecorder

Opus in WebM on Chrome, Firefox and Android; AAC in MP4 on Safari. Recorded at about 48 kbps.

WebCrypto

AES-256-GCM, HKDF-SHA-256, PBKDF2 and SHA-256 — your browser’s native crypto, no libraries.

WebAudio

An AnalyserNode drives the stage; the playback waveform is decoded locally with decodeAudioData.

Atomic hand-off

A rename-then-unlink on the server: exactly one claim can win, even under a race.

Zero-dependency server

Node with no npm packages; atomic file writes; abandoned deliveries are cleaned at start-up.

Strict CSP

Scripts and fonts from this origin only. Microphone permission scoped to this site. No analytics, no third parties.

Features

Free stays free. The vault goes longer.

Free

  • Notes up to 1 minute
  • Unplayed notes expire after 24 hours
  • One listen, then deleted from the server
  • Private status link: see if it was heard, or unsend it

Vault — unlock with the coin

  • Notes up to 10 minutes
  • Choose the expiry: 1 hour to 7 days
  • Passcode-protected notes — five wrong guesses and the note destroys itself

Burn 25,000 the coin · 30 days · stacks

The coin

Burn to unlock. That’s the whole job.

In Zecho, the coin does one thing: you burn some from your own wallet to turn on the vault for 30 days. It’s an SPL burnChecked in a transaction you sign — the tokens are destroyed on-chain, not sent to us — and our server reads the burn back from Solana before unlocking anything.

Burning destroys tokens permanently. It gives no return, revenue share or financial right. The free version stays free.

The coin isn’t live yet — burn-to-unlock is coming soon.

Vault pass

Sign in with your wallet to see your pass.

These tokens are destroyed forever. This is not a payment to us.

Burn ledger

Burned through Zecho—
Burns—
Current supply—

“Burned on-chain” counts every burn of the coin by anyone, including any burns the team makes — read straight from the token’s supply.

    Privacy & safety

    What Zecho never does.

    • Never holds your funds, never asks for a seed phrase or private key.
    • Signing in is a free message signature — it can’t move anything.
    • A burn shows its exact amount before your wallet asks you to sign.
    • The Solana RPC key stays on the server.
    • No analytics, trackers, third-party fonts or scripts. Your microphone is only on while the record button is red.

    What is stored, and for how long

    • Notes (ciphertext): until played, unsent, or expired — whichever comes first.
    • A “played / expired / unsent” marker (no audio): until the note’s original expiry, at least 24 hours, so links can say what happened.
    • Sign-in sessions: 24 hours. Burn ledger: wallet, amount, transaction — public on-chain anyway.
    • Reports: note id and reason, until reviewed.

    Terms. Don’t use Zecho for anything illegal, to threaten or harass anyone, or to share content you have no right to share. Use “Report this note” on any listen page; the operator can delete a waiting note without being able to hear it.

    FAQ

    Fair questions.

    Can the listener replay it?

    No. There’s no seek bar, and the server deleted the file when it was delivered. Reloading the page finds nothing.

    Can Zecho listen to my notes?

    No. The key is in the part of the link after #, which browsers don’t send to servers. We store ciphertext and token hashes only.

    Will a link preview in a chat app use it up?

    No. Previews only load the page. Playing requires pressing “Listen once”, which needs the key from the link.

    What if the connection drops while it loads?

    Then it’s gone — the server has already deleted it. Notes are small, so this is rare, but it’s the honest trade-off.

    Does it work on my phone?

    Yes. Recording uses MediaRecorder (iOS Safari 14.5+ and all current Android browsers). Very old iPhones may not play notes recorded as WebM/Opus on desktop.

    Does it cost anything?

    No. Longer notes, custom expiry and passcodes unlock by burning the coin — not a payment to anyone.

    Which wallets work for the vault?

    Any wallet supporting the Solana Wallet Standard — Phantom, Solflare, Backpack and others. Listeners never need a wallet.