The most likely reason is that users are blocking the Adsense ads using Adblock or some other software that prevents the Adsense ads from loading. Adsense will only count pageviews if the ad is displayed.
There are some other reasons, such as the code being in different locations on the page and users bouncing when one has loaded and another has not.
Google has an article on it you can find by searching for its title:
Why do my statistics differ between AdSense and Analytics?
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.