Daily builds APIs that let developers add real-time video to their site or app with just a few lines of code. Daily prioritizes developer experience, and aims to make every interaction with our platform as frictionless as possible: clear, affordable pricing is part of that ongoing commitment.
Developers building on Daily have several choices for how they integrate real-time video into their own site or app: they can take control of video and audio tracks and build their own UX for highly-customized video experiences; or add a polished, prebuilt UI with powerful out-of-the-box features like chat and dual screen sharing. The Daily Live Streaming API lets you scale your reach even further, and live stream to millions: with just one additional line of code, developers can live stream video calls to platforms like YouTube Live or Twitch, or to their own custom players.
Our API pricing, similarly, lets teams evaluate pricing easily, start fast, and scale.
- You don’t have to talk to sales to start. When you do want to talk to someone, we are responsive. Need volume pricing? Please fill out this form.
- The free plan lets you test and prototype, with paid tiers to scale.
- We use a simple model to calculate video call minutes. Daily calculates 'participant-minutes.' In contrast, other WebRTC APIs use 'subscriber-minutes,' which is a factorial calculation with an additional step that adds up more minutes.
- The price for live streaming (and, similarly, recording) is the same regardless of how many participants are on a call.
Below we walk through pricing for features like recording and live streaming, and we also describe basics, like how minutes are calculated, what’s included in each tier versus additional minutes, how room count is tallied, and more.
Don’t hesitate to ping us! We’re firstname.lastname@example.org, or click the chat button on this page. You also can read the API docs here.
Free and paid plans
There are three tiers, with add-ons and additional minutes available. Here’s what affects pricing and plans:
- Participant count - how many people join a video chat
- Participant minutes - how long a participant was on the call
- Number of rooms - how many meeting rooms are created at any given time
- Add-on features - did the video call use features like dial-in and recording
Our pricing has two per-minute rates — one for video, and another for audio. The default rate is for video, so make sure to contact support to implement audio-only pricing.
As shown in the image below, each plan includes a base number of minutes and rooms.
Counting participants, minutes, rooms
How to count participants
A participant is someone who joined a call. If you create a room, but no one joins it, there are 0 participants and 0 minutes. Put another way, what matters is how long someone is connected to our servers.
How to count participant minutes
This is key. Our API minutes formula, shown below to the left, is simple. We'll also walk through what other APIs do, shown to the right below.
N is the number of people who joined the video call:
The Daily API minutes formula is N * minutes = participant-minutes.
To the right in the image is what other WebRTC APIs use. It's a factorial method, known as subscriber minutes: N * (N-1) * minutes = subscribed minutes.
Example A: 3 people are all on a call for 30 minutes
- Daily counts that as 3 * 30 = 90 participant-minutes
- Other APIs, which use subscriber-minutes, calculate more minutes. The subscribed-minutes total would be 3 * 2 * 30 = 180 subscriber-minutes
Daily counts you as using half as many minutes, in this example.
Example B: 3 participants are in a call for different lengths of time
A product management platform makes teamwork easier. Its users can manage all work and communications in the tool, including video chat. Teams can schedule and start video charts with a simple click right from project cards and kanban boards. The participants are stopping and starting at different times, like on this call:
- Product manager (PM) joins the call, and is in the meeting room alone for 30 seconds.
- The designer then joins. The PM and designer are on the call for 1 minute.
- Then the developer joins. All three now video chat for 30 minutes.
- When the developer leaves, the PM and designer talk for an additional 5 minutes.
What counts, for the Daily API, is how long each participant is connected to our Daily servers. Here are the totals, for each participant.
- PM is in the meeting room for a total of 36.50 minutes. That’s 1 participant x 36.50 min.
- Designer is in the meeting room for a total of 36 minutes. That’s 1 participant x 36 min.
- Developer is in the room for a total of 30 minutes. That’s 1 participant x 30 min.
- The total participant-minutes is 102.50 minutes (36.50 min PM + 36 min designer + 30 min developer).
How to count rooms
A developer can create and delete rooms as needed. Deleted rooms do not count against your limit.
Example A: Using the free plan
Many developers first test with the free plan. Configure your rooms to auto-delete once all participants exit. You then can test within the 50 rooms included in the free plan.
Example B: Scaling room usage
Developers create and delete rooms as needed, for robust applications. Customer support is a typical example of this, with our users. Over the course of a month, they may use thousands of meeting rooms. During a text chat, a support teammate determines if talking face-to-face will improve the chat, resolve the issue more effectively for the customer, and cut down ticket time. The teammate clicks a button in the dashboard to drop a video call button into the chat.
The developers configure the process:
- When the teammate clicks the 'Start a video chat' button, a room is created.
- The room is configured to be available to join for 15 minutes, then to be auto-deleted after the meeting participants leave the room.
What matters to Daily is not the number of times this is done during a month. What matters is the number of rooms that have been created, but not deleted yet.
- Free plan you can have 50 created (and not yet deleted) rooms at any given time.
- Launch is 1,000 created (and not yet deleted) rooms at any time.
- Scale is 10,000 created (and not yet deleted) rooms at any time.
If you need more than 10,000 rooms available at any given time, please contact us and we can raise the limit for your account.
Additional minutes, with your plan
Controlling rooms and features is something developers can do easily. Minutes is more difficult, since it often comes down to real world usage. Certainly, your developer can limit meeting duration, or how many total minutes your customers rack up. That may not be appropriate for your use case, though (you don't want to cut off your own customers' calls); and/or additional call minutes might be something you want to test and monitor.
For the Launch and Scale plans, the Daily API plans has additional minute flexibility.
- Free plans do not support additional minutes billing, since there’s no credit card needed and on file.
- Launch plan includes 2,000 base participant-minutes; calls have up to 200 participants. Each minute over your included minutes is charged $.004/min.
- Scale plan also includes 10,000 base participant-minutes. Each minute over your allotted participant-minutes is charged $.004/min.
Example A: Launch
In a month, a Launch customer has used 15,000 participant-minutes. Their monthly invoice is:
- $9/month Launch plan includes 2,000 participant-minutes per month.
- Additional 13,000 participant-minutes are $.004 x 13,000 = $52.
- Total monthly invoice is $61.
Example B: Scale
Additional minutes for Scale customers starts out with the same pricing as for Launch customers. For example, an online language lessons platform hosts 500 calls between a teacher and a student each weekday. The calls are each 30 minutes long.
- 30 minutes x 2 participants x 500 calls per day x 20 weekdays per month = 600,000 participant-min.
- $199/month Scale base plan includes 10,000 participant-minutes per month.
- Additional 590,000 participant-minutes are $.004 x 590,000 = $2,360.
- Total monthly invoice is $2,559.
If you expect to consistently use more than 500,000 participant-minutes per month, we can customize pricing discounts for you. We work with customers to craft pricing that makes sense for your use case.
Larger meetings & branding
The number of people in your video calls affect your plan.
- NEW: All pricing tiers support calls with up to 200 participants. Important: read about why the number of cameras that are on in your calls can affect call quality.
Example A: Free
A product team is quickly prototyping a collaborate whiteboard tool. Their calls might have several people.
- They actually start with the free plan. (Our free tier now supports up to 200 people in a room.) As the developers test and build, they auto-delete rooms. Later they'll upgrade to the Launch plan because they'll need more than the 2,000 minutes included in the free tier.
Example B: Scale
An online meditation platform supports a variety of classes. Some of them are 1:1 coaching. Others are larger workshops and classes. In one month they log 2,000,000 minutes of calls. So beyond their included 10,000 minutes, they used 1,990,000 additional minutes. They prefer to remove the Daily branding ("Powered by Daily") from the calls, so they sign up with Scale.
For those 1,990,000 additional minutes, let’s look at how many people were on the calls, to calculate the additional minutes usage:
- By the way, these are participant-minutes. (So we won’t go through that part of the calculation.)
- They logged an additional 1,900,000 additional minutes (over their free 10,000 minutes). So that’s $.004 * 1,990,000 = $7,960 additional participant-minutes charge.
The meditation platform’s monthly invoice is $8,159:
- $199 Scale plan, to remove "Powered by Daily"
- $7,960 additional participant-min charge
Features and Add-ons
It’s also easy to add features like dial-in, audio-only rooms, live streaming, and recording with the Daily API. Recording is available with our Scale plan. (Dial-in is part of custom enterprise plans — please contact us for dial-in.)
Our API supports audio-only use cases such as audio-based social networks or collaboration tools. Audio calls are priced at $0.00099/min: contact our support team to implement audio-only billing.
Recording is calculated using plain minutes, not participant-minutes. This is based on how we technically handle the recording, which lets us offer more affordable recording.
Daily composites the recording in the client. (You're not sending us multiple streams to composite). Our API lead Kwin describes more in a blog post about transcoding recordings, and using the MUX API in conjunction with our Daily API. Scroll down to the last section there, 'Under the covers — using the HTML MediaRecorder API.'
So, again, when calculating recording, don't use participant minutes. Just use the plain recording duration.
Example A: Automatic recording
An insurance platform uses a video call to remotely inspect damage. Every chat is automatically recorded. So if a call with 2 people runs for 30 minutes:
- Participant costs, 2 x 30 = 60 participant-min counted against monthly minutes
- Recording costs, 30 min recording * $.015 = $.45 recording cost
Example B: Ad-hoc recording
A collaborative design platform gives customers the option of recording the design session and saving it to their dashboard, at an additional cost to the customer. On one call, a team of three records the first 45 minutes of work on a call; they stay on the call for another 15 minutes after they click ‘Stop recording.’
- Participant costs, 3 x 60 min = 180 participant-min counted against monthly minutes
- Recording cost, 45 min recording x $.015 = $.675
Similar to recording, Live streaming at Daily is charged using plain minutes and is the same price regardless of how many participants are included on a stream. Because live streaming at Daily begins with a WebRTC video call, it is charged in addition to the cost of the call. Live streaming is billed at $0.10/seconds, as long as a stream is live.
Like recording, the way we priced live streaming has to do with how technically handle the live stream: The Daily Live Streaming API transcodes the various WebRTC tracks in the initial video call in real time, and outputs those as a single RTMP stream. This can then be ingested by platforms like Brightcove or YouTube Live, or your own custom audio player. We deliver the same, low 200/ms streaming latency on every stream, unlike competitors who charge more for lower latency.
If a yoga studio wanted to host a 60-minute yoga class with an instructor and five students (six participants total), all attending the class remotely, and also live stream the class via Facebook Live, the cost would be:
- Participant costs for the yogis in attendance, 6 x 60 = 360 participant minutes
- Live streaming costs, $0.10 x 60 = $6
Note that some external platforms may have additional live streaming charges.
- Free plan does not require a credit card.
- Call duration is calculated in seconds. At the end of the month, your total seconds is rounded to minutes.
- You shortly can see your used participant-minutes in your dashboard, and also via API calls.
- We bill via Stripe, and charge the credit card on file automatically monthly.
- If you’re interested in the technical details, you can read more about how we implemented billing with Stripe. This is a technical blog post that’s not necessary to understand pricing, to be clear. It’s just fun reading for developers, to give some background on how we work!