All six GA4 conversions are attributed to direct traffic. However, in reality, four conversions originated from Facebook, and two came from Google Shopping.
Google Ads tracks purchase activity, but it is not attributed to the shopping channel.
My Facebook ads (Ads Manager) accurately report four conversions.
Current website traffic is exclusively from Facebook Ads or Google Ads. Analyzing the Shopify backend shows that all first visits originated from either paid social or paid shopping.
Traffic source detection in GA4 works by utm tags and referral if there are no utm tags.
The problem you described is related to incorrect operation of your tracking.
Here are some potential causes:
If you have a consent, you may not have the tags set up correctly in relation to the consent.
It is also common that your consent banner is small and users may ignore it and go to other pages. Because of this tracking starts to work not from the user landing, but on further pages where he will accept the consent.
The GA4 session is interrupted at some point in the checkout and a new one begins. Here we need to check that session id and client id GA4 are the same throughout the user’s flow.
Running multiple GA4s in parallel, one of which is server side, the other client side. This leads to problems in essence in both analytics.
No utm tags. Make sure that utm tags (utm_source and utm_medium at least) are added to your paid ads links and are available when user lands on your page.