Publisher guide

Everything you need to publish, protect and sell your audiobooks and audio courses on Storia.

Getting started

There is no password to create. Open the publisher console, type your email, and click the link we send you — that signs you in and sets up your account in one go. You stay signed in for 60 days on that device. The first time, you'll be asked to accept the Terms of Service before you can publish.

Creating & publishing a title

Start from the dashboard. Give the book a name and hit Create — or, if it's already finished, drag the file straight onto the box. Doing that creates the title, splits it into chapters and fills in the details, cover and description before you have typed anything. See Uploading a finished book for what each kind of file gives you.

Then you're walked through the set-up, one step at a time, with tabs across the top so you can go back to anything later. Each step saves as you leave it — there's no Save button to forget, and no way to lose a step's work by carrying on.

StepWhat it's for
ChaptersThe audio. Upload the finished book, or a file per chapter — up to 5 GB per title. Drag to reorder; large files go up in pieces so a wobbly connection doesn't cost you the whole upload.
DetailsTitle, author, narrator, description, series, year, genre, ISBN, language, and the colours the player uses.
CoverThe artwork on the player, on the sales page, and on every link preview.
EbookThe book in text form, and its read-along timings.
AccessFree to anyone with the link, or locked behind an access link. This one decides what comes next.
Free sampleA short clip people can hear before they buy.
Payment (paid titles only)Connect your own payment account so buyers pay you directly.
Sharing (paid titles only)Hand out access yourself with single-use links.
RegionsLimit the book to the countries you hold the rights in.
PublishHosting — a flat $25 for 10 years per book, the only fee Storia charges you — confirming your rights, and going live.

Optional steps can be skipped, and skipping means exactly that: nothing is saved, and you can come back to the tab whenever you like. The set-up follows your answers — a free book never shows you Payment or Sharing at all, because there is nothing to sell. Choose "Private" in the Access step and both appear right after it.

Uploading a finished book

Your file is opened and split up on your own computer, and only the finished chapters are sent to us. Nothing is re-compressed, so what your listeners hear is exactly what you made — and there is nothing to install first. Three kinds of file:

What you uploadWhat Storia fills inWhat's left for you
M4B — the usual audiobook file (a chaptered .m4a or .mp4 works too) Every chapter as its own track, with its title and running time, plus the cover, author, narrator, description, year, genre and series. The ebook, and read-along timings if you want them.
EPUB — the ebook The description and cover. If the ebook already has narration built in (the read-along kind Apple Books uses), also the audio as one chapter per file and the read-along timings. Nothing — the ebook itself is kept as the reading copy, slimmed down so it downloads quickly.
LPF — a packaged audiobook some production tools export Every chapter in order, the cover, title, author, narrator and language — plus the ebook and read-along timings if the package has them. Nothing.
If your book is one enormous chapter (over about 192 MB), it's uploaded whole rather than split, so your browser doesn't run out of memory. MP3, OGG, FLAC and WAV files don't carry chapter marks we can read, so those go up one file per chapter.
"Convert for streaming". Some audiobook files are built so that a player has to fetch the entire thing before it can play a second of it — those show up as download-only. Chapters we split for you are never like this, and we quietly fix small files as they upload, so this only comes up for a large file you uploaded whole. Press the button on the file and we rearrange it so it starts instantly. The audio is copied across untouched: nothing is re-compressed and the running time doesn't change.
Nothing is ever locked. Publishing doesn't freeze your book. You can add, replace, remove, reorder and re-time chapters on a book that's already selling, and edit the details, cover, sample and ebook whenever you like. Listeners get the change straight away. It's your book — fix a typo, swap a bad take, add a bonus chapter.
Confirming your rights. Before a book goes live you'll be asked to confirm, for that book, that you hold the rights to publish and distribute it — the audio, the cover, and the ebook. We record when you did and what you agreed to.

The ebook (optional). A book can carry one text version: an EPUB or a PDF. Listeners can read it in the built-in reader and download it. With an EPUB you can also add read-along timings so the reader follows the narration line by line — and if we can work them out during upload, we add them for you. Replace or remove either at any time.

Listen before you publish. While you're signed in you can open your own book's player and play all of it — even an unfinished draft, even a paid one — without buying anything. Only you see this; everyone else still needs it published, and an access link if it's paid.

Free sample (optional). Each book can have a short clip that plays on its sales page before anyone buys. We try to take one from your first chapter automatically; you can upload a different one, or remove it. The sample plays for everyone, even on a paid book, so people can try before they buy.

Get discovered (optional). Tick "List in the public catalogue" on a published book and it appears on Discover, where listeners browsing Storia can find it. It's off unless you turn it on — your book stays unlisted by default.

Free or paid

Each book is either free (anyone with the link can listen) or paid (a listener needs an access link). A paid book shows a sales page with your cover, your description, the free sample, a buy button, and an email address people can write to if they lose their access.

Selling with your own payment account

You connect your own payment account, so buyers pay you directly. The money never passes through Storia and we never take a share of it. When your payment provider confirms a sale, we create that buyer's access link and send it to them.

The simple way (recommended)

  1. Create a payment link or product in your payment provider — Polar, Stripe, Square, Lemon Squeezy or Paddle.
  2. Your provider needs to tell Storia when someone has paid. The console shows you an address to paste into your provider's settings, and your provider gives you a secret code in return — paste that back into Storia. It's two copy-and-pastes, and the console shows you exactly where each one goes.
  3. Selling more than one book? With Polar you can point all of your books at the same address instead of setting one up each time. Choose “Reuse my Polar webhook for all my titles” and Storia shows one address for your whole catalogue; the secret code carries over, so you paste it once. Each book then needs its Product ID from Polar, which is how we tell which book an order was for.
  4. Paste your payment link, set a price, and you're selling. Buyers go to your own checkout and get their access link by email once they've paid.

Unlock without waiting for the email (optional). Most providers can send a buyer back to a page of your choosing after they pay. Point that at the address the console shows you, and the book unlocks on their device the moment they return — they never have to go and find the email. If your provider doesn't do this, the emailed link still works exactly as it should.

The seamless way

If you'd rather buyers came straight back into the player after paying, give Storia your provider's API key and it will handle the checkout itself. PayPal works this way.

Payment providerSimple wayWhat you paste in
Polar, Stripe, Square, Lemon Squeezy, PaddleYes (default)Your payment link and the secret code
PayPalNo — the seamless wayClient ID, secret and webhook ID from PayPal
What you paste in is stored against that book and never shown again after you save it. Storia only listens for the word that someone paid — it never touches your money.

Selling several editions on one page (optional)

You can group books into a collection: one page you can share that lets a buyer choose between them. Each book keeps its own sample and its own checkout, which makes this a good fit for different narrators, languages or editions of the same work — without mashing them into one listing. The books stay completely separate, and only published ones show up.

Drafts don't last forever

An unpublished draft is deleted after 90 days without a change. Any edit restarts the clock, and publishing stops it for good — so this only ever catches something genuinely abandoned. You get two emails first: one when a draft is into its last couple of weeks, and a final notice a few days before. The console shows the date on the book itself once it's close.

You can keep 10 unpublished drafts at a time. Publish one or delete one to start another. Published books never expire and don't count towards the limit — you paid to host them.

Access links & sharing

A listener gets into a paid book with an access link. Opening it on a phone, tablet or computer signs that device in and keeps it signed in. What you decide is how many devices can listen at once on a single link.

Listeners can pass their link on as often as they like — sharing is never rationed and never runs out. What's limited is how many of their devices are active at the same time: opening the link on a new device signs out whichever one has gone longest without listening. So a family can share one link freely and still can't listen on more devices than you allowed. Every link you hand out gets its own set of devices, so one buyer never eats into another's.

The same number limits how many unopened links one listener can be sitting on at once — an unopened link is a device waiting to happen. They can always share anyway: the oldest unopened link makes way, the same way the most idle device does. You can revoke anyone's access from the console at any time.

Where a book can be heard

Audiobook rights are usually sold country by country, so each book can be limited to the countries you hold the rights in — or made available everywhere except a few. Set it under Where it can be heard in the console: choose the restriction, pick the countries, save.

Listeners elsewhere get a short page explaining that the publisher hasn't made the book available where they are — with your contact email, if you've given one — rather than a dead end or a "not found". It covers the player, the audio, the ebook and the sales page: there's no sense selling access we won't honour. You can always reach your own book from anywhere, so you can check it while travelling.

We work out where someone is from their internet connection, and anyone we can't place is let through rather than shut out. Treat it as a good-faith boundary that satisfies a rights obligation, not as a lock — anyone using a VPN can get around it.

What listeners get

  • A player that works offline — save it once, listen on a plane, no account needed.
  • Carry on from another device — the place they got to follows them, if they want it to.
  • A real ebook reader — add the text and listeners can read it in the app, full screen: contents, light, sepia and night themes, text size, typeface, line spacing and width, scrolling or page turns, and it remembers the page. A PDF opens in the app too.
  • Read-along — when the book has timings, the reader follows the narration and turns the page to keep up. Tapping a word jumps the narration there.
  • Reading and listening are the same thing — opening the text doesn't stop the voice, and the page follows what's being read aloud. Put the book down mid-page, press play, and it carries on from the sentence you stopped at, on any of their devices.
  • A free sample — on a paid book, a taste before buying.
  • Reviews — a rating and a few words on the book.

Read-along timings

Most publishers never have to make one of these. Storia works one out for you in every common case — this section is here for the last one, and for anyone who wants to hand-build something finer.

Read-along timings line the text up with the narration. Their real job is keeping your place: a listener who switches between reading and listening lands exactly where they left off instead of somewhere near it. When the timings are detailed enough, the reader also lights up the words as they're spoken — but that's the decoration, not the point, and listeners can switch it off.

There are four ways a book gets them:

  • An ebook with narration already in it — upload one and the timings come across automatically, as precise as the book was made. Nothing to do.
  • An LPF package — the timings travel inside the package.
  • Built from your chapters — hardly anyone making an M4B has word-by-word timings, so the console offers to build chapter-level ones instead: it matches each part of your ebook to the chapter that narrates it. Nothing lights up at this level — there's no individual phrase to point at — but switching between reading and listening becomes exact instead of approximate. It's one click under Read-along sync, and you can replace it later with something finer.
  • You supply your own — if your production process gave you word-level timings, the format is below.

However they arrive, the timings point at your book's own chapters, so read-along keeps working after you edit, replace or re-time a chapter.

The file format, for anyone supplying their own

Skip this unless you're producing timings yourself. There are two forms and they carry the same thing — use whichever your tools already produce. Times are in seconds from the start of the chapter they refer to — not from the start of the book — and track counts chapters from 1.

A spreadsheet (CSV)

If your timings live in a spreadsheet, or came out of an audio editor as labels, save them as CSV and upload that. One row per cue; a chapter is just the rows that share an href and track. The header row is required, its order doesn't matter, and start/end may be seconds (62.5) or a timecode (01:02.500):

href,track,id,sel,start,end,text
OEBPS/ch01.xhtml,1,w1,,0,0.42,Call
OEBPS/ch01.xhtml,1,w2,,0.42,0.98,me
OEBPS/ch02.xhtml,2,w1,,0,1.5,Some

Only href, track, start and end are required — columns are looked up by name, so a file written without sel (or without id) is still read exactly as before.

Files saved from Excel, Numbers or Sheets work as-is — the byte-order mark and Windows line endings they add are handled, and a text column containing a comma is fine as long as it's quoted, which those apps do for you.

JSON

The same document, for anyone generating it from a build step:

{
  "type": "storia-sync",
  "version": 1,
  "sections": [
    {
      "href": "OEBPS/ch01.xhtml",
      "track": 1,
      "cues": [
        { "id": "w1", "start": 0,    "end": 0.42 },
        { "id": "w2", "start": 0.42, "end": 0.98 }
      ]
    }
  ]
}
  • href — the document inside your EPUB. Matched on the full path, falling back to the filename, so either works.
  • track — which chapter's audio these belong to (1 = the first chapter).
  • id — optional: the id of the element to light up in that document. Leave it out and the cue still places that stretch of audio in that document — which is all a chapter-level file can honestly claim, and is enough to keep the two in step. A generated chapter-level file looks like { "start": 0, "end": 930.5 }.
  • sel — optional: a CSS selector for the element to light up, when it hasn't got an id to name. Most EPUBs put ids on nothing, so this is usually the only way to point at a paragraph: { "sel": "body>div:nth-child(1)>p:nth-child(4)", "start": 0, "end": 12.4 }. Give a cue both and the id is tried first. A selector that matches nothing is skipped quietly — that cue just doesn't light up, and the rest of the chapter is unaffected.
  • start / end — seconds into that chapter's audio. They must be in order and must not overlap; touching (end equal to the next start) is fine.
  • text — optional and ignored by the player. Handy when writing one by hand.

How fine to go is up to you: one cue per word gives the karaoke effect, one per sentence or paragraph is calmer and makes a far smaller file. Anything malformed is refused on upload with the specific problem named, so you can fix it and try again.

The reader won't light up a wall of text. A cue covering more than roughly a sentence is used for keeping your place but not highlighted — painting a whole chapter reads as a fault, not as "you are here". Listeners can turn highlighting off altogether; keeping their place works either way.

FAQ

Does Storia take a cut of my sales?

No. You pay the flat hosting fee and nothing else. Sales go to your own payment account, and the only cut is whatever your provider charges.

Do my buyers need an account?

No. They get a link by email and it just works — nothing to sign up for.

Can I take my files somewhere else later?

Yes. They're your files. Download or delete them whenever you want.

Do I need to convert my M4B before uploading it?

No, and you don't need to install anything to do it. Storia reads and splits it in your browser and copies the audio across untouched, so nothing is lost.

Does my whole M4B get uploaded?

No — only the chapters it's split into, which is the same audio without the wrapper around it. The reading and splitting happen on your own machine.

Will my audio be re-compressed?

Never. Storia copies your audio as it is at every step, including when it splits chapters or makes a file start faster. The running time doesn't change and neither does the sound.

Open the console →