# Zoom Calls Quality issue - Thresholds from moniotoring

**URL:** <https://devforum.zoom.us/t/zoom-calls-quality-issue-thresholds-from-moniotoring/2784>\
**Category:** API and Webhooks\
**Created:** [December 20, 2018, 9:40am UTC](https://devforum.zoom.us/t/zoom-calls-quality-issue-thresholds-from-moniotoring/2784 "2018-12-20T09:40:58Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![suhailpuri](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/suhailpuri/32/1018_2.png) [@suhailpuri](https://devforum.zoom.us/u/suhailpuri)\
**Post date:** [December 20, 2018, 9:40am UTC](https://devforum.zoom.us/t/zoom-calls-quality-issue-thresholds-from-moniotoring/2784/1 "2018-12-20T09:40:58Z")

</div>

We are trying to setup alerting for bad zoom calls.

What should be the recommended threshold values for a good call quality :-

1. Jitter
2. Avg Packet Loss
3. Latency
4. Bitrate

Jitter - ~125-200ms  
Latency - ~300-400ms  
Packet Loss - ~20%  
CPU Usage - ~90%”

When the above values are configured then we get an email every 1 minute because the meeting are happening over the Internet, Home Internet, 3G/4G.

When the jitter and Latency was set to 1000ms then the email alert was on an average every 5 minutes.

Considering the global userbase i.e. 898 active users globally there are always going to be some calls in some part of the world which will be affected and we will always get an alert.

There should be some finite values we can specify in order to capture a real bad quality call ?

---

<div class="post-metadata">

**Author:** ![bdeanindy](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/bdeanindy/32/154_2.png) [@bdeanindy](https://devforum.zoom.us/u/bdeanindy)\
**Post date:** [December 20, 2018, 3:28pm UTC](https://devforum.zoom.us/t/zoom-calls-quality-issue-thresholds-from-moniotoring/2784/2 "2018-12-20T15:28:11Z")

</div>

Howdy @suhailpuri

I was able to find this [Zoom Help Center Article](https://support.zoom.us/hc/en-us/articles/202920719-Meeting-Statistics), which states:

> You can [go] to [http://speedtest.net](http://speedtest.net/) to check your network bandwidth. Generally, we recommend 1.2 to 1.5Mbps upload/download for an optimal experience on desktop or room systems.

However, you mentioned a variety of connection sources such as: Internet, Home Internet, and 3G/4G, and I wasn’t able to locate any specifics for what your thresholds should be set as while monitoring to be considered.

I asked some of our Customer Success Managers if we had “Optimal Operating Target” values for these metrics, and they provided me with the following information:

```auto
| Metrics | Ideal Threshold | Notes |
|-------------|-----------------|------------------------------------------------------|
| Jitter | < 150ms | Variation in time between packets arriving |
| Latency | < 300ms | Delay between packets being sent/received |
| Packet Loss | < 20% | Number of packets failing to reach final destination |
| CPU Usage | < 90% | Send and Receive rate you experience during the call |

```

Are you developing an app and using the [List Meeting Participant’s QoS API](https://marketplace.zoom.us/docs/api-reference/zoom-api/dashboards/dashboardmeetingparticipantsqos) to obtain these numbers for your own monitoring?

I scratched the itch with a couple other questions and wanted to share what I learned, in case it helps…

> What happens when one or more attendees are on poor-quality connections, when this occurs, will they trigger a threshold monitoring alert?

Answer: Users receive a monitor alert, and they are encouraged to disable their camera.

Does this help get you moving in the right direction?

---

<div class="post-metadata">

**Author:** ![suhailpuri](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/suhailpuri/32/1018_2.png) [@suhailpuri](https://devforum.zoom.us/u/suhailpuri)\
**Post date:** [December 24, 2018, 11:18am UTC](https://devforum.zoom.us/t/zoom-calls-quality-issue-thresholds-from-moniotoring/2784/3 "2018-12-24T11:18:07Z")

</div>

Hello @bdeanindy,

Yes we are pooling QOS API stats via splunk for alerting so we know what user is impacted and what could be the possible reason for his or her meeting wrong.

below is the query we use in splunk :-

earliest=-5m@m index=connect2018 source="/opt/splunk/bin/scripts/ZoomLiveMeetingQuality.py"  
| rename participants{}.user\_id AS userID, participants{}.user\_name AS userName, participants{}.user\_qos{}.date\_time AS DateTime  
| stats  
max(participants{}.user\_qos{}.cpu\_usage.zoom\_avg\_cpu\_usage) AS AvgCPU,  
max(participants{}.user\_qos{}.audio\_input.latency) AS AudioInLatency,  
max(participants{}.user\_qos{}.audio\_output.latency) AS AudioOutLatency,  
max(participants{}.user\_qos{}.video\_input.latency) AS VideoInLatency,  
max(participants{}.user\_qos{}.video\_output.latency) AS VideoOutLatency,  
max(participants{}.user\_qos{}.audio\_input.jitter) AS AudioInJitter,  
max(participants{}.user\_qos{}.audio\_output.jitter) AS AudioOutJitter,  
max(participants{}.user\_qos{}.video\_input.jitter) AS VideoInJitter,  
max(participants{}.user\_qos{}.video\_output.jitter) AS VideoOutJitter,  
max(participants{}.user\_qos{}.video\_input.max\_loss) AS VideoInMaxLoss,  
max(participants{}.user\_qos{}.video\_output.max\_loss) AS VideoOutMaxLoss,  
max(participants{}.user\_qos{}.audio\_input.max\_loss) AS AudioInMaxLoss,  
max(participants{}.user\_qos{}.audio\_output.max\_loss) AS AudioOutMaxLoss,  
max(participants{}.user\_qos{}.audio\_input.avg\_loss) AS AudioInAvgLoss,  
max(participants{}.user\_qos{}.audio\_output.avg\_loss) AS AudioOutAvgLoss,  
max(participants{}.user\_qos{}.video\_input.avg\_loss) AS VideoInAvgLoss,  
max(participants{}.user\_qos{}.video\_output.avg\_loss) AS VideoOutAvgLoss  
by meetingId, userName  
| table meetingId, userName, AvgCPU, Audio\*,Video\*  
| convert rmunit(Audio\*)  
| convert rmunit(Video\*)  
| convert rmunit(AvgCPU)  
| where (VideoInLatency\>1500 OR VideoOutLatency\>1500) AND (AudioInLatency\>1500 OR AudioOutLatency\>1500) AND (AudioOutJitter\>1500 OR AudioInJitter\>1500) AND (VidoeOutJitter\>1500 OR VideoInJitter\>1500) OR (AudioOutAvgLoss\>20 OR AudioInAvgLoss\>20) AND (VideoOutAvgLoss\>20 OR VideoInAvgLoss\>20)

---

<div class="post-metadata">

**Author:** ![bdeanindy](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/bdeanindy/32/154_2.png) [@bdeanindy](https://devforum.zoom.us/u/bdeanindy)\
**Post date:** [December 27, 2018, 8:02pm UTC](https://devforum.zoom.us/t/zoom-calls-quality-issue-thresholds-from-moniotoring/2784/4 "2018-12-27T20:02:12Z")

</div>

Do you need any additional information/help on this?

---

<div class="post-metadata">

**Author:** ![suhailpuri](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/suhailpuri/32/1018_2.png) [@suhailpuri](https://devforum.zoom.us/u/suhailpuri)\
**Post date:** [December 27, 2018, 9:39pm UTC](https://devforum.zoom.us/t/zoom-calls-quality-issue-thresholds-from-moniotoring/2784/5 "2018-12-27T21:39:00Z")

</div>

Yes please. We opened a case with Zoom and zoom support later opened a case with engineering team who asked me to post a question in developer forum.

Our issue has still not been addressed and your input would be valuable.

Thanks in advance,

Suhail

---

<div class="post-metadata">

**Author:** ![bdeanindy](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/bdeanindy/32/154_2.png) [@bdeanindy](https://devforum.zoom.us/u/bdeanindy)\
**Post date:** [December 29, 2018, 12:45am UTC](https://devforum.zoom.us/t/zoom-calls-quality-issue-thresholds-from-moniotoring/2784/6 "2018-12-29T00:45:02Z")

</div>

Hey @suhailpuri

You asked…

> [@suhailpuri](#):
>
> What should be the recommended threshold values for a good call quality :-

I provided the table above which contains what Zoom considers the “Optimal Thresholds”.

You also stated this about your use of Splunk…

> Yes we are pooling QOS API stats via splunk for alerting so we know what user is impacted and what could be the possible reason for his or her meeting wrong.

I’m not a Splunk expert, and I’m unfamiliar with its DSL, but the `where` clause at the bottom of your filter appears to be calculating the VideoOutAvgLoss as a value of 20 instead of 20%. Are you certain the values you’re testing against coincide with the threshold values/units I provided in the optimization table earlier?

What other specific issues/questions do you need us to address for you please?

---

<div class="post-metadata">

**Author:** ![ideabelleyra](https://avatars.discourse-cdn.com/v4/letter/i/ed8c4c/32.png) [@ideabelleyra](https://devforum.zoom.us/u/ideabelleyra)\
**Post date:** [February 22, 2019, 5:01pm UTC](https://devforum.zoom.us/t/zoom-calls-quality-issue-thresholds-from-moniotoring/2784/7 "2019-02-22T17:01:59Z")

</div>

@suhailpuri , do you happen to have the Python “/opt/splunk/bin/scripts/ZoomLiveMeetingQuality.py” script in Github or any other SCM? I am starting with a Zoom QOS Monitoring project in python and it would be interesting to see how you attacked this matter.

Thanks,  
Ignacio

---

<div class="post-metadata">

**Author:** ![abhinav\_chittora](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/abhinav_chittora/32/1900_2.png) [@abhinav\_chittora](https://devforum.zoom.us/u/abhinav_chittora)\
**Post date:** [September 23, 2019, 9:46am UTC](https://devforum.zoom.us/t/zoom-calls-quality-issue-thresholds-from-moniotoring/2784/8 "2019-09-23T09:46:19Z")

</div>

Hi @suhailpuri,

I know this is very old post. However, I was also trying to achieve the same thing i.e. Using Zoom QOS, create alerts in Splunk for users who are experiencing issue with zoom call. Do you happen to have the python script ZoomLiveMeetingQuality.py?

---

<div class="post-metadata">

**Author:** ![tommy](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/tommy/32/72769_2.png) [@tommy](https://devforum.zoom.us/u/tommy)\
**Post date:** [September 23, 2019, 7:22pm UTC](https://devforum.zoom.us/t/zoom-calls-quality-issue-thresholds-from-moniotoring/2784/9 "2019-09-23T19:22:16Z")

</div>

Hey @abhinav_chittora,

In addition to tools like Splunk, Zoom has a Webhook alert that sends a payload to your server if a meeting is experiencing issues.

> **[Meeting Alerts - Meeting Events - Webhook Reference - API Reference](https://marketplace.zoom.us/docs/api-reference/webhook-reference/meeting-events/meeting-alerted)**
>
> Meeting Alert
> 
> 
> 
> Zoom monitors meeting statistics in regards to the quality of service for each meeting.
> 
> The "Meeting Alert" event is triggered every t...

-Tommy

---

<div class="post-metadata">

**Author:** ![abhinav\_chittora](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/abhinav_chittora/32/1900_2.png) [@abhinav\_chittora](https://devforum.zoom.us/u/abhinav_chittora)\
**Post date:** [September 24, 2019, 9:10am UTC](https://devforum.zoom.us/t/zoom-calls-quality-issue-thresholds-from-moniotoring/2784/10 "2019-09-24T09:10:40Z")

</div>

@tommy,  
Agreed, However these webhook alerts are triggered when we have performance issue with any meeting. We would like to ingest QOS data in Splunk or tools similar to this, so that we can check trends and predict issues.

---

<div class="post-metadata">

**Author:** ![tommy](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/tommy/32/72769_2.png) [@tommy](https://devforum.zoom.us/u/tommy)\
**Post date:** [September 24, 2019, 3:16pm UTC](https://devforum.zoom.us/t/zoom-calls-quality-issue-thresholds-from-moniotoring/2784/11 "2019-09-24T15:16:44Z")

</div>

In that case, you can pull [Zoom QOS via our Dashboard Endpoints](https://marketplace.zoom.us/docs/api-reference/zoom-api/dashboards/dashboardmeetingparticipantqos).

As for integrating with Splunk, here is their dev forum:

> **[How to use the REST API to just run a search and stream the results back?](https://answers.splunk.com/answers/232330/how-to-use-the-rest-api-to-just-run-a-search-and-s.html)**
>
> Hi,
> 
> I have a question about using the REST API to run a search. The doc seems to indicate that you need to follow 3 steps - create a search job, get the search status, and then get the search results. Is there any way to just run the search and...

Thanks,  
Tommy

---

<div class="post-metadata">

**Author:** ![mike.li](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/mike.li/32/11362_2.png) [@mike.li](https://devforum.zoom.us/u/mike.li)\
**Post date:** [July 2, 2020, 2:59pm UTC](https://devforum.zoom.us/t/zoom-calls-quality-issue-thresholds-from-moniotoring/2784/12 "2020-07-02T14:59:27Z")

</div>

As a Splunk admin and working with Zoom admins, trying to setup Splunk Connect for Zoom app([https://splunkbase.splunk.com/app/4961/#/details](https://splunkbase.splunk.com/app/4961/#/details)). We have the running/listening on 4443.  
Using [https://docs.splunk.com/Documentation/ZoomConnect/1.0.1/User/Installandconfiguresingle](https://docs.splunk.com/Documentation/ZoomConnect/1.0.1/User/Installandconfiguresingle),  
Create a Zoom Webhook Only App.

1. Navigate to marketplace.zoom and log in to your Zoom account
2. Click **Develop \> Build App**
3. Follow the steps to create a Webhook Only App
4. Fill in the following App Information:

- App Name \* Short Description \* Company Name \* Developer Name \* Developer Email Address

1. Click **Continue**.
2. Enable **Event Subscriptions**.
3. Click the **Add new event subscription** button.
4. Enter the following information:

- Subscription Name (For example, Splunk)
- Event notification endpoint URL (For example, splunkhf\_mycompany\_com\_4443)

1. Click the **Add events** button.
2. Subscribe to any Webhook Events you want. See the Zoom Webhook Reference page for more information.
3. Click **Save**.
4. Click **Continue**.
5. Activate the Webhook Only App

Question is what are ips for zoom to whitelist? Currently seeing 52.202.62.224,52.202.62.227, 52.202.62.196. Is that the whole list?  
Please advise.  
Thanks

---

<div class="post-metadata">

**Author:** ![tommy](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/tommy/32/72769_2.png) [@tommy](https://devforum.zoom.us/u/tommy)\
**Post date:** [July 6, 2020, 10:47pm UTC](https://devforum.zoom.us/t/zoom-calls-quality-issue-thresholds-from-moniotoring/2784/13 "2020-07-06T22:47:37Z")

</div>

Hey @mike.li,

You can see the Zoom Webhook IP list here:

> **[Webhook Reference - API Reference](https://marketplace.zoom.us/docs/api-reference/webhook-reference#ip-addresses)**
>
> Webhooks
> 
> 
> 
> Zoom utilizes webhooks as a medium to notify third-party applications (consumer applications) about events that occur in a Zoom account. Ins...

Thanks,  
Tommy

---

<div class="post-metadata">

**Author:** ![Devd25](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/devd25/32/13750_2.png) [@Devd25](https://devforum.zoom.us/u/Devd25)\
**Post date:** [August 19, 2020, 8:09am UTC](https://devforum.zoom.us/t/zoom-calls-quality-issue-thresholds-from-moniotoring/2784/14 "2020-08-19T08:09:43Z")

</div>

Hi Mike, could you please share what security device did you choose to add the rule to whitelist the Zoom IPs and connection to Splunk HF on port 4443, that is, whether on firewall or on the proxy server ?

Did you also need to add a DNS record for the Splunk HF to map to splunkhf\_mycompany\_com ?

---

<div class="post-metadata">

**Author:** ![tommy](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/tommy/32/72769_2.png) [@tommy](https://devforum.zoom.us/u/tommy)\
**Post date:** [August 21, 2020, 6:17am UTC](https://devforum.zoom.us/t/zoom-calls-quality-issue-thresholds-from-moniotoring/2784/15 "2020-08-21T06:17:18Z")

</div>

Hey @Devd25,

You can see the IP addresses for webhooks here:

> **[Webhook Reference - API Reference](https://marketplace.zoom.us/docs/api-reference/webhook-reference#ip-addresses)**
>
> Webhooks
> 
> 
> 
> Zoom utilizes webhooks as a medium to notify third-party applications (consumer applications) about events that occur in a Zoom account. Ins...

-Tommy

---

<div class="post-metadata">

**Author:** ![michael.watson](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/michael.watson/32/32148_2.png) [@michael.watson](https://devforum.zoom.us/u/michael.watson)\
**Post date:** [May 11, 2021, 3:45am UTC](https://devforum.zoom.us/t/zoom-calls-quality-issue-thresholds-from-moniotoring/2784/16 "2021-05-11T03:45:13Z")

</div>

@bdeanindy I’ve been looking through this thread and wanted to check the ideal threshold you have in your table for Latency and Packet Loss. These values are quite different (Latency \<300ms vserus \<150ms and Packet Loss \<20% versus \<2%) to what is listed in the following link. Is there a reason for this or is there something I’m missing?

> **[Meeting and phone statistics](https://support.zoom.us/hc/en-us/articles/202920719-Meeting-and-phone-statistics)**
>
> Overview
> Meeting statistics allow you to view various diagnostic information during a meeting. This allow you to gauge whether you are experiencing a network, audio, or video issue during your meet...

---

<div class="post-metadata">

**Author:** ![will.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/will.zoom/32/14417_2.png) [@will.zoom](https://devforum.zoom.us/u/will.zoom)\
**Post date:** [May 11, 2021, 9:21pm UTC](https://devforum.zoom.us/t/zoom-calls-quality-issue-thresholds-from-moniotoring/2784/17 "2021-05-11T21:21:00Z")

</div>

Hi @michael.watson,

Thanks for reaching out about this. While these values are estimates, the values listed earlier in this thread were being referenced back in 2018, so I would recommend deferring to the values in [this article](https://support.zoom.us/hc/en-us/articles/202920719-Meeting-and-phone-statistics).

If you have further questions about these values or how they were derived, please feel free to reach out to our [Technical Support](https://support.zoom.us/hc/en-us/requests/new) team as well, as they’re the experts in this domain.

Thanks!  
Will

---

<div class="post-metadata">

**Author:** ![akashtabla349](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/akashtabla349/32/28960_2.png) [@akashtabla349](https://devforum.zoom.us/u/akashtabla349)\
**Post date:** [July 7, 2021, 10:53am UTC](https://devforum.zoom.us/t/zoom-calls-quality-issue-thresholds-from-moniotoring/2784/18 "2021-07-07T10:53:31Z")

</div>

zoom video sdk integration in reactjs, php

How can I integrate audio and video call using zoom api with reactjs or php or jQuery ?

I read zoom documentation but not find

We have a HTML frontend. I need to integrate Zoom API to my application.

Please share the steps to integrate the same.

---

<div class="post-metadata">

**Author:** ![will.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/will.zoom/32/14417_2.png) [@will.zoom](https://devforum.zoom.us/u/will.zoom)\
**Post date:** [July 8, 2021, 2:14pm UTC](https://devforum.zoom.us/t/zoom-calls-quality-issue-thresholds-from-moniotoring/2784/19 "2021-07-08T14:14:29Z")

</div>

Hi @akashtabla349,

Please start a new thread for this here as this is unrelated to the current post: #web-client-sdk

Thanks,  
Will

---

<div class="post-metadata">

**Author:** ![pkmist128](https://avatars.discourse-cdn.com/v4/letter/p/d6d6ee/32.png) [@pkmist128](https://devforum.zoom.us/u/pkmist128)\
**Post date:** [July 18, 2022, 5:59pm UTC](https://devforum.zoom.us/t/zoom-calls-quality-issue-thresholds-from-moniotoring/2784/20 "2022-07-18T17:59:36Z")

</div>

Hello Will,

Would it be possible for you to reach out to your tech team and post their response to how these values were derived, please? Also, are these the thresholds that are consulted when you issue meeting alerts (the Meetings Alert Webhook)?

This would help make this a self-contained thread that would be very useful to future visitors and we’d reduce the load on your tech support (avoid prompting them to answer the same questions repeatedly to different individuals).

Thank you,
