Your video. Your bucket. Your rules.
One request in, HLS and DASH out — into your own bucket, or hosted by us. Every option we sell is checked by a real encode.
No card needed · 30-second test encodes free · pay per output minute after
const job = await client.jobs.create({
inputUrl: "s3://bucket/input.mp4",
outputOriginId: "ori_x9y8z7w6v5",
outputs: [{
type: "hls",
video: [
{ codec: "h264", resolution: "1080p" },
{ codec: "h264", resolution: "720p" },
{ codec: "h264", resolution: "480p" },
],
}],
});How it works
One request. Three stages.
Point to your source
Pass an S3, GCS, R2, or public URL. We fetch the video and probe it automatically.
Pick your outputs
Choose codecs, resolutions, and format — MP4, HLS, DASH, or adaptive. Or use a preset.
Get your files
Encoded files are written to your storage. Webhook fires when the job completes.
No card needed · 30-second test encodes free · pay per output minute after
Two products. One encoder.
Encode into your own storage, or let us host, deliver and play it for you.
Transcoding API
Bring your own storage. Pay per output minute. Product page →
-
H.264, HEVC, VP9, AV1
All major codecs. From widely compatible H.264 to royalty-free AV1. Up to 8K, HDR10 and HLG.
-
HLS & DASH packaging
Output to HLS, DASH, or both from shared CMAF segments. Multi-bitrate playlists, fMP4 or TS. No extra cost.
-
A failed job bills €0
One base rate and a few multipliers you can see, printed in full on the pricing page. Audio tracks, packaging and thumbnails are included. Per-app spend limits stop a runaway pipeline before it becomes an invoice.
-
Three tiers, stated in VMAF
Economy targets VMAF 85–90, Standard 93–95, Premium 97–99. The tier is a price multiplier you choose, not a guess we make for you.
-
Webhooks
Get notified on job progress, completion, and failures. Build reactive pipelines without polling.
-
Your bucket, your paths
Encode straight into your own S3, GCS, R2 or HTTP origin. A four-level path template decides the filename before the job starts, so the object your pipeline writes is the object your app already expects. Or hand us a public URL and skip the setup.
Video Hosting
Upload, transcode, host, and stream via global CDN. How hosting works →
-
Auto or custom ladder
Upload with zero config and get a CMAF ABR ladder from your app defaults. Or pick a system preset. Or define your own — up to 20 variants, full control.
-
Multi-codec manifests
Same ladder, parallel codecs — AV1 1080/720/480 alongside H.264 1080/720/480 in one manifest. Modern players pick AV1; older devices fall back to H.264 at the same resolution.
-
Global delivery & player
Edge-cached streaming with signed, time-limited URLs, domain CORS whitelist, and three visibility tiers. Vidstack-based player, embed by URL or iframe — works everywhere.
-
Managed end-to-end
Enable hosting, configure defaults, create presets, and track per-video storage and egress costs — all from the dashboard. Multipart uploads up to 5 GB included.
One platform. Two front doors.
The same hosted video, however your team works — drag it into the dashboard, or make three API calls. Either way: transcoded, on the CDN, ready to embed.
Drop a video — we take it from here
// From file to embeddable player — three calls
const { video, uploadUrl } = await client.videos.createUpload({
appId: "app_k1l2m3n4o5",
filename: "product-launch.mp4",
contentType: "video/mp4",
sizeBytes: BigInt(file.size),
});
await fetch(uploadUrl, { method: "PUT", body: file });
await client.videos.completeUpload({ id: video.id });
// → video.embedUrl, video.playbackUrl (HLS)One player, one CDN, one metered bill.
Explore Video Hosting →Run it from your agent
See the MCP serverConnect the hosted MCP server to Claude, Claude Code or Cursor and your agent gets 15 real tools — not a chat about video, an actual encode. Every call is scoped to one app and audited; there are no delete tools and nothing to install.
Transcode and host this video and give me a link: https://www.transcodely.com/videos/bbb-30s.mp4
Done — it is hosted and ready: https://play.transcodely.com/v/vid_a1b2c3d4e5f6g7
Simple, usage-based pricing
Full pricing and calculatorPay per output minute. Per GB stored. Per GB delivered. No monthly fees.
Transcoding API
€0.005 / output minute, starting from
- H.264 / 480p €0.005/min
- H.264 / 1080p €0.010/min
- HEVC / 1080p €0.010/min
- VP9 / 1080p €0.015/min
- AV1 / 1080p €0.040/min
- HEVC / 4K €0.040/min
- AV1 / 4K €0.160/min
30fps, standard quality. Pair with your own storage (S3, GCS, R2).
Video Hosting
Metered, three line items
- Encoding €0.010/ output min
One-time per video
- Storage €0.020/ GB·month
Source + all renditions, prorated daily
- CDN delivery €0.010/ GB egress
Global edge, metered hourly
Uploads, CDN, player, and analytics included. See how →
What you can hold us to
Outputs land where you put them.
Read from and write to your own S3, GCS, R2 or HTTP origin. Output path templates resolve the same way every time. A collision between two templates you wrote is rejected at create; one between our defaults is auto-fixed. Never a silent overwrite. Up to 20 variants in a ladder you designed.
Output pathsOnly the people you choose.
Signed, time-limited playback URLs, three visibility tiers, and Widevine, FairPlay and PlayReady with your own keys or ours. CENC or CBCS. The part everyone underestimates, already built.
DRM & signed playback161 of 168 cases, gaps listed.
Every codec, container, ladder and DRM path is re-run as a real job on a real worker, with the output downloaded and inspected. Features we accept but cannot yet produce are on the same page, in their own section.
See what’s checkedReady to press play?
An account takes a minute. Your first encodes are free 30-second tests; after that it is one rate per output minute.
No card needed · 30-second test encodes free · pay per output minute after