When filtering Opportunities by their Primary Contact, or when trying to show fields from the Primary Contact on an Opportunity report or merge action, you may find that your results are blank. This is typically due to using the wrong Opportunity lookup field. Many people choose Contact (Contact) as the lookup field between Opportunity and Contact. This is an old Salesforce field and is not in active use. This will typically result in blank results.
There are multiple Contact lookup fields related to Contact that all look similar but function differently.
To ensure you're using the correct field for Primary Contact:
npsp__Primary_Contact__c"For more on this see this video