Explain what produces each Stream charge on the pricing page - #408
Open
bogdan-at-bunny wants to merge 1 commit into
Open
Explain what produces each Stream charge on the pricing page#408bogdan-at-bunny wants to merge 1 commit into
bogdan-at-bunny wants to merge 1 commit into
Conversation
The Stream pricing page lists rates but not what triggers them. Add a "What each charge comes from" section mapping encoding, storage, CDN delivery, transcribing and Enterprise DRM to the activity that produces the charge and to the per-library usage source, and clarify that GEO replication rates are additive.
Contributor
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
bogdan-at-bunny
requested review from
NathanZBunny,
bunny-krzysztof and
zeljko-at-bunny
August 12, 2026 08:48
bogdan-at-bunny
marked this pull request as ready for review
August 12, 2026 08:48
zeljko-at-bunny
left a comment
Contributor
There was a problem hiding this comment.
- The Enterprise DRM base fee's scope -> it is per library - we might want to change that so not sure if this is the perfect time to document it, wdyt @NathanZBunny?
- How to stop the DRM base fee -> best handled with support IMO
- That a transcription requested via POST /library/{id}/videos/{id}/transcribe bills even when the library toggle is off -> yes, the library toggle means "automatically transcribe all newly uploaded videos", it is not a feature switch, so one can manually transcribe videos via dash button or API call and get charged.
- The "Standard encoding is free" claim -> 4K is included in free and don't see any need to point that out directly
|
|
||
| ### Storage | ||
|
|
||
| Storage is billed on what a video generates during encoding, not on the size of the file you uploaded. Each enabled resolution is stored separately, and **MP4 fallback**, **Keep original files**, preview animations, thumbnails, and captions all add more on top, so a library can easily hold several times the footage you sent it. [Video storage usage](/stream/encoding#video-storage-usage) shows which of these is taking the space for a given video. |
Contributor
There was a problem hiding this comment.
Suggested change
| Storage is billed on what a video generates during encoding, not on the size of the file you uploaded. Each enabled resolution is stored separately, and **MP4 fallback**, **Keep original files**, preview animations, thumbnails, and captions all add more on top, so a library can easily hold several times the footage you sent it. [Video storage usage](/stream/encoding#video-storage-usage) shows which of these is taking the space for a given video. | |
| Storage is billed on what a video generates during encoding, not only on the size of the file you uploaded. Each enabled resolution is stored separately, and **MP4 fallback**, **Keep original files**, preview animations, thumbnails, and captions all add more on top, so a library can easily hold several times the footage you sent it. [Video storage usage](/stream/encoding#video-storage-usage) shows which of these is taking the space for a given video. |
|
|
||
| Transcribing is charged per language per minute of audio at the point the transcription runs, so cost scales with both the total length of the videos and the number of languages selected: five languages cost five times one. | ||
|
|
||
| Enabling transcribing on a video library applies it to videos uploaded from then on, but a transcription can also be requested for a single video with [Transcribe video](/api-reference/stream/manage-videos/transcribe-video), and that request can override the library's transcription settings. A transcribing charge can therefore appear for a library whose dashboard setting is currently off — either from a video processed before it was switched off, or from a direct API request. [Get transcribing statistics](/api-reference/core/stream-video-library/get-video-library-transcribing-statistics) reports the transcribed minutes for a library. |
Contributor
There was a problem hiding this comment.
Suggested change
| Enabling transcribing on a video library applies it to videos uploaded from then on, but a transcription can also be requested for a single video with [Transcribe video](/api-reference/stream/manage-videos/transcribe-video), and that request can override the library's transcription settings. A transcribing charge can therefore appear for a library whose dashboard setting is currently off — either from a video processed before it was switched off, or from a direct API request. [Get transcribing statistics](/api-reference/core/stream-video-library/get-video-library-transcribing-statistics) reports the transcribed minutes for a library. | |
| Enabling transcribing on a video library applies it to videos uploaded from then on, but a transcription can also be requested for a single video with [Transcribe video](/api-reference/stream/manage-videos/transcribe-video), and that request can override the library's transcription settings. A transcribing charge can therefore appear for a library whose dashboard setting is currently off — either from a video processed before it was switched off, or from a direct API request or dashboard interaction. [Get transcribing statistics](/api-reference/core/stream-video-library/get-video-library-transcribing-statistics) reports the transcribed minutes for a library. |
|
|
||
| ### MediaCage Enterprise DRM | ||
|
|
||
| The \$99 monthly base fee applies for as long as Enterprise DRM is enabled, whether or not any licenses are issued that month, and license fees are billed on top of it. [Get DRM statistics](/api-reference/core/stream-video-library/get-video-library-drm-statistics) reports the licenses issued for a library. |
Contributor
There was a problem hiding this comment.
Suggested change
| The \$99 monthly base fee applies for as long as Enterprise DRM is enabled, whether or not any licenses are issued that month, and license fees are billed on top of it. [Get DRM statistics](/api-reference/core/stream-video-library/get-video-library-drm-statistics) reports the licenses issued for a library. | |
| The \$99 monthly base fee applies for as long as Enterprise DRM is enabled on a video library, whether or not any licenses are issued that month, and license fees are billed on top of it. [Get DRM statistics](/api-reference/core/stream-video-library/get-video-library-drm-statistics) reports the licenses issued for a library. |
Contributor
Author
|
From Krzystof: I would change
to
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What changed and why
stream/pricing.mdxis a rate card: it lists the per-minute, per-GB and per-license numbers, but says nothing about what produces each of those charges. A reader looking at a Stream charge cannot work out from this page that standard encoding is free while extra resolutions cost storage instead, that storage is billed on the encoded footprint (every resolution, MP4 fallback, kept originals) rather than the uploaded file, that transcribing is charged per language at the moment it runs and can be triggered per video over the API independently of the library setting, or that the Enterprise DRM base fee accrues while the feature is enabled regardless of licenses issued.This PR adds one section, What each charge comes from, mapping each billed dimension to the activity that produces it and to the API endpoint or dashboard view that shows the underlying usage per library. It also adds one clarifying sentence under GEO Replication, because the table there reads as a replacement rate rather than an additive one — the same additive example already appears in
storage/pricing.mdx.No rates were changed.
What I could not verify
stream/pricing.mdxnorstream/drm/index.mdxsays per what, so I deliberately wrote "for as long as Enterprise DRM is enabled" without committing to per-library or per-account. If it is per library, that is worth stating explicitly on both pages./library/{id}/videos/{id}/repackageand/reencodeboth exist in the Stream spec), but I could not confirm that from source.POST /library/{id}/videos/{id}/transcribebills even when the library toggle is off. I inferred this from the endpoint's request body, documented in the spec as "Used to override video library transcription settings", plus an internal answer describing exactly that outcome. I could not run it.stream/encoding.mdx("free transcoding") and on Premium Encoding being the only encoding rate table that exists. I did not confirm whether every resolution — 4K in particular — is included in the free tier, so I did not name any resolution.docs.jsonand that the two anchors I used (#video-storage-usage,#downloading-usage-summaries,#minimum-monthly-usage) match real headings, but I did not see the page build.Pre-existing issues noticed but not fixed
stream/pricing.mdxuses####for the "$0.10 per language minute" and "$99 per month base fee" callouts, skipping###under their##parents — a heading-level jump.stream/pricing.mdxand the one onstream/drm/index.mdxduplicate the same rates in two places, so they can drift apart. A snippet would fix that.stream/drm/index.mdx:132renders a malformed price:$$570 + $$99 base fee(doubled dollar signs).billing/index.mdxis frontmatter only, with no body content.