Ravindra BagaleCourses & study guides Track your progress

Guides

Prime Video Architecture Explained: How Amazon Streams Films and Live Sport

Short answer: Prime Video runs on AWS, its sister company. For live sport such as NFL Thursday Night Football, Prime Video uses AWS Elemental MediaConnect (moving live camera feeds), MediaLive (live encoding) and MediaPackage (packaging for devices) across multiple AWS regions. Prime Video is also famous for a 2023 change where one team moved a monitoring tool from many serverless pieces to one application on Amazon ECS and cut that tool's cost by about 90%. In November 2025, Prime Video's live events were delivered through Amazon CloudFront, with caching at multiple layers.

Suppose you open Prime Video and watch a live match

It is a Thursday evening in the US, and a fan opens Prime Video on a Fire TV to watch the live NFL game. (In India you might watch a film instead, but live sport shows the architecture best.) Here is the public picture of what happens:

  1. Cameras at the stadium produce the live broadcast feed.
  2. AWS Elemental MediaConnect carries this live video feed reliably into AWS.
  3. AWS Elemental MediaLive encodes the feed into many qualities (for example HD on Wi-Fi, lower quality on mobile data).
  4. AWS Elemental MediaPackage packages the video into formats each device understands.
  5. The workflow runs in more than one AWS region, so one region having trouble does not stop the game.
  6. The Prime Video app on your TV downloads small video segments one after another and plays them.

For films and series (video on demand), the files are prepared in advance, so there is no live encoding step. The detailed design of Prime Video's on-demand catalog and delivery network is not publicly shared.

What architecture style does Prime Video use?

Prime Video mixes several styles, and its engineers have been honest that the "right" style depends on the job.

  1. Services on AWS: Prime Video is one of the Amazon consumer teams that moved its databases from Oracle to AWS database services in the 2019 migration.
  2. Managed media services for live video: instead of building encoders, the live workflow uses AWS Elemental services.
  3. Multi-region for resilience: live events are too important to depend on one region.
  4. Monolith where it fits: the Video Quality Analysis (VQA) team first built its stream-monitoring tool with AWS Step Functions, Lambda and S3. It hit scaling limits at about 5% of the expected load and was costly, because every video frame was passed through S3 and every step was a Step Functions state change.
  5. The fix: they put the media converter, the defect detectors and the orchestration into one process running on Amazon ECS on EC2. Data now stays in memory. Infrastructure cost for that tool dropped by over 90%.

The lesson for learners: microservices and serverless are tools, not rules. Prime Video still uses many services; it changed the design of one tool where a single process was simpler and cheaper.

Prime Video architecture diagram (public parts)

This diagram shows only what Prime Video or its partners have shared publicly. Press Play to follow a request step by step.

Watch the orange dot follow each numbered step.
Prime Video architecture from public information (simplified)AWS cloud (several regions for live events)Delivery to devicesSimplified; based on publicly shared information.ViewerFire TV, phone, webMediaConnectlive feed transportMediaLivelive encodingMediaPackagepackage for devicesPrime Video servicesaccounts, catalog, playbackAWS databasesexact mix not publicVQA monitor on ECSchecks stream qualityAmazon CloudFrontmulti-layer caching
  1. Stadium cameras produce the live feed for viewers like you.
  2. MediaConnect carries the live feed into AWS.
  3. MediaLive encodes it into many qualities.
  4. MediaPackage prepares formats for each device.
  5. Prime Video services check your account and start playback.
  6. Account and catalog data live in AWS databases.
  7. The VQA monitor on ECS watches the stream for defects.
  8. CloudFront delivers video segments from edge locations.
  9. The match plays on your screen.
Diagram 1: the public parts of Prime Video's live streaming path. Simplified; delivery network details are not publicly shared. Open the diagram as an image (PNG) · WebP

What does Prime Video use? Main technologies

LayerWhat Prime Video uses (public)What it does in simple words
CloudAWSEverything runs on Amazon's cloud
Live transportAWS Elemental MediaConnectMoves live feeds into AWS
Live encodingAWS Elemental MediaLiveTurns one feed into many qualities
PackagingAWS Elemental MediaPackageFormats for TVs, phones, browsers
DeliveryAmazon CloudFront (2025)Sends video to millions of viewers
Ad insertionAWS Elemental MediaTailor (2017)Targeted ads in streams
Quality monitoringSingle-process app on Amazon ECS / EC2Finds video and audio defects
DatabasesAWS database services (2019 migration)Account and business data

Which cloud provider does Prime Video use?

Prime Video uses AWS. Some public facts:

  1. In November 2025 live events like Thursday Night Football and NBA on Prime used CloudFront's elastic capacity and caching at multiple layers.
  2. In 2019 Prime Video was among the Amazon teams that moved from Oracle to AWS databases.
  3. Prime Video uses AWS Elemental services, including MediaTailor for ad insertion during the 2017 NFL games.
  4. Since 2022, NFL's Thursday Night Football has been delivered globally on AWS.

What was the famous 90% cost cut?

In March 2023, Prime Video cut the cost of its audio/video monitoring service by 90%. Here is the story in simple steps:

  1. The team needed a tool that watches thousands of live streams and spots problems like frozen video, block corruption or audio-video sync issues.
  2. Version 1: AWS Step Functions orchestrated small Lambda functions; frames were saved to S3 between steps.
  3. Problem 1: Step Functions charges per state change, and there were many state changes every second for each stream.
  4. Problem 2: passing every frame through S3 was costly.
  5. Version 2: one ECS task did the conversion, detection and orchestration in memory.
  6. To scale, they run several copies, each with a subset of detectors, behind a light request router.
  7. Result: over 90% lower infrastructure cost for this tool, and better scaling.

How does Prime Video store data?

  1. Business and account data moved to AWS database services in the 2019 Oracle migration; which exact database each Prime Video service uses is not publicly shared.
  2. In the VQA redesign, intermediate video frames are no longer stored in S3; they stay in memory.
  3. Live video is delivered through CloudFront with caching at multiple layers (2025). How the film catalog files are stored is not publicly shared in detail.

How does Prime Video monitor its systems?

  1. The VQA service itself is a monitoring system: it checks live streams for audio and video defects.
  2. For live events, the multi-region design lets teams switch paths if one fails (2022).
  3. General internal monitoring tools are not publicly shared in detail.

If we built an app like Prime Video on AWS (illustrative)

Please read this first

This section is a learning design by Ravindra Bagale. It is not Prime Video's real setup. Prime Video uses AWS, but its real design and scale are much larger and partly not public. We use AWS here because it is what you learn in the AWS course.

Suppose you want to build "ShivFlix", a streaming app for Marathi films and local cricket matches. Here is a simple AWS layout.

1. Network: VPC, subnets, route tables, gateways

  1. Create one VPC with CIDR 10.0.0.0/16 in the Mumbai region (ap-south-1).
  2. Use two Availability Zones (A and B), so one AZ failing does not stop the app.
  3. In each AZ make three subnets: public (load balancer, NAT gateway), private app (your code) and private data (databases, cache).
  4. Attach one internet gateway (IGW) to the VPC. Public route table: 0.0.0.0/0 → IGW. This route is what makes a subnet public.
  5. Private app route table: 0.0.0.0/0 → NAT gateway, so servers can download updates but nobody can connect in from the internet.
  6. Private data route table: only the local VPC route. Use VPC endpoints to reach S3, DynamoDB and SQS without going over the internet.

2. Compute: where the code runs

  1. Application Load Balancer across both public subnets.
  2. Playback and catalog APIs on Amazon EKS (or ECS, like the Prime Video VQA team) in private subnets.
  3. For live matches: MediaConnect → MediaLive → MediaPackage, then CloudFront to viewers.
  4. For films: AWS Elemental MediaConvert converts uploads in S3 into HLS/DASH segments.

3. Storage and databases

  1. S3 for master files and encoded segments; CloudFront for delivery.
  2. Aurora for accounts and plans.
  3. DynamoDB for watch history and "continue watching".
  4. ElastiCache for home page rows.

4. Monitoring

  1. CloudWatch alarms on MediaLive input loss, CloudFront 5xx and API latency.
  2. X-Ray traces for the playback API.
  3. Keep a second MediaLive pipeline (standard channel) for live events.

Request flow diagram

Press Play. The numbered list below the diagram lights up with each step.

Watch the orange dot follow each numbered step.
If we built a Prime Video-like app on AWS (illustrative)AWS Region (for example ap-south-1, Mumbai)VPC 10.0.0.0/16Availability Zone AAvailability Zone BPublic subnet 10.0.1.0/24RT: 0.0.0.0/0 → IGWPublic subnet 10.0.2.0/24RT: 0.0.0.0/0 → IGWApp subnet 10.0.11.0/24RT: 0.0.0.0/0 → NATApp subnet 10.0.12.0/24RT: 0.0.0.0/0 → NATData subnet 10.0.21.0/24RT: local onlyData subnet 10.0.22.0/24RT: local onlyvia VPC endpointsIllustrative learning design only. This is NOT the company's real setup.Userphone appRoute 53DNS lookupCloudFrontCDN edge cacheAmazon S3video segmentsIGWApplication Load Balancerspans both AZsNAT gatewayNAT gatewayPlayback APIEKS pods (auto scaling)Playback APIEKS pods (auto scaling)ElastiCachehome rows, sessionsAuroraaccounts, plansElastiCachehome rows, sessionsAuroraread replicaKinesisviewing eventsDynamoDBwatch historyCloudWatch + X-Raymetrics, logs, traces
  1. You open ShivFlix. Route 53 finds the address.
  2. Video segments and posters come from CloudFront.
  3. On a miss, CloudFront fetches the segment from S3 (or MediaPackage for live).
  4. API calls enter the VPC through the internet gateway.
  5. The ALB picks a healthy playback API pod.
  6. The playback API checks your plan and device.
  7. Home rows come from ElastiCache.
  8. Plan from Aurora; "continue watching" from DynamoDB.
  9. Play and pause events go into Kinesis.
  10. CloudWatch and X-Ray record health.
  11. Your app starts playing the video.
Diagram 2: an illustrative AWS design for learning. Prime Video does not necessarily run like this; see the sections above for what is publicly known. Open the diagram as an image (PNG) · WebP

Prime Video versus our AWS design

PartPrime Video (public info)Our AWS design
CloudAWS, multiple regions for liveAWS, one region, two AZs
Live videoMediaConnect, MediaLive, MediaPackageSame AWS Elemental services
DeliveryCloudFront with multi-layer caching (2025)CloudFront
Monitoring toolVQA monolith on ECSCloudWatch alarms
DatabasesAWS databases (exact mix not public)Aurora, DynamoDB
LessonPick the simplest design that scalesStart simple, split later

Quick quiz: check what you learned

  1. Which service encodes Prime Video live sport feeds?

    1. AWS Elemental MediaLive
    2. Amazon Simple Queue Service
    3. Amazon Route 53 resolver
    4. AWS Identity Center
    Show answer

    A. MediaLive does the live encoding.

  2. Why was the first VQA design so costly?

    1. It used too many big GPUs
    2. Frames went through S3 often
    3. It ran on Google Cloud too
    4. It stored video in RDS
    Show answer

    B. Many Step Functions state changes and S3 frame transfers drove the cost.

  3. Where does the new VQA tool run?

    1. On AWS Lambda functions
    2. On a Kubernetes cluster
    3. On Amazon ECS as one app
    4. On laptops in the office
    Show answer

    C. It became a single-process application on ECS.

  4. Why run live events in more than one region?

    1. To get cheaper storage
    2. To avoid writing code
    3. To use fewer AWS services
    4. So one region failing is OK
    Show answer

    D. Multi-region keeps the game running if one region has trouble.