How to identify why my proc remove from the cache

Hi,

I've sql server 2016 with SP2 and i have a problem that every few hours my proc get out of the cache.

I've tried to use the option(keepfixed plan) inside the proc and it's still get out of cache.

my question is - how i can find exactly why the proc get out from the cache?

THX