The simple answer: Google Analytics and Facebook Ads will never ever show the same data. This is because it's a vast difference in everything from tracking to attribution modeling.
Let's start out by looking at the specific reasons to why there's a discrepancy in the numbers:
Facebook are using people-based measurement, instead of cookie-based. (A further explanation on this will follow later in this article.)
Google Analytics under-reports cross-device conversions, due to their cookie-based tracking.
Google Analytics can't see post-view data from Facebook.
Facebook reports conversions based on time of impressions - and not the time of conversion (which Google Analytics does).
The attribution models in Facebook Ads and Google Analytics might be different, depending on your settings.
Google Analytics often uses sampled data. (More info)
If you're using UTM-links, this information disappears if the tab is closed between the click and the conversion. This conversion is instead categorized as "Direct" in Google Analytics.
The conversions can be categorized as "Direct" in Google Analytics if the user is going between different protocols (HTTP & HTTPS). According to researches, this might result in an under-report in up to 40%.
A highly common mistake
If you're used to evaluating the performance of various channels through Google Analytics, you're not alone. It's the most common analytics tool, which of course has made it to an authority. It's therefore easy to think that Google Analytics is reflecting the truth.
This is mainly due to what's called "People-based measurement". As you probably know, Facebook has a lot of user data through their platforms: Facebook, Instagram and WhatsApp. These platforms in addition to the Facebook Pixel enables Facebook to build a comprehensive overview on how users are viewing, clicking, browsing and converting from ads. It's hard to beat.
Compare this to Google Analytics and their cookie-based tracking. Google sees that someone is entering to a website through a UTM-parameters and referring domain (such as Facebook.com). Although, already here - the data could be corrupt and the visit could be categorized as "Direct" (due to any of the last two bullets in the list above).
Discrepancies in reporting
As stated in the list of reasons, there are also a lot of differences in the evaluation of the data. Facebook Ads attributes the conversions to the time of the impression, while Google Analytics attributes it to the time of the conversion. There's no right or wrong here, just different ways to attribute a conversion to a specific time stamp.
The attribution models used are also different in Google Analytics and Facebook Ads.
How to relate to this
In the world of online marketing, we're far from knowing the exact truth. Although, we can always use our common sense to find some kind of personalized model to evaluate various channels. Google Analytics is very far from the truth, while Facebook Ads is closer to it. Same goes with other channels where the advertising platform knows more about the uses than Google Analytics knows about the cookies.
Try to nuance the bigger picture with your common sense.