Web elements not identified intermittently

There is one critical which I have been observing while running a hybrid application.

There are certain pages where we need to switch the context a custom web context. For certain elements
, appium is not able to detect the element sometimes whereas its able to detect sometimes.

The strange part is that it is happening only in case of web elements and not in case of native elements. The chromedriver used is 77 and the same is the chrome browser version. We are using proper explicit , implicit timeouts but the same script is identifying the element at some execution and not at random times.

What could be the issue for this behaviour? Is it a chromedriver issue as the same element is being identified more frequently on a certain device and missing on another…

If so , what can be the potential solution?