What explains why Puerto Rico has much lower GNP than GDP? I can understand why some countries like Luxembourg, Singapore, and Ireland have much lower GNP than GDP.
But why is the same true for Puerto Rico? I would've thought that since lots of Puerto Ricans work outside Puerto Rico, its GNP should be higher than its GDP. Yet the reverse is true.
(In 2019, Puerto Rico's real GDP per capita was \$36,045, while real GNP per capita was \$24,300. So GNP was about 67% of GDP.)
This is impossible to answer completely objectively given the data availability.
The GNI is given as:
$$GNI = C + I + G + NX + NFFI$$
where, C is consumption, I investment , G gov. spending, NX net exports,  and  NFFI is net foreign factor income. The first 4, terms are by definition GDP so the relationship between GNI and GDP is:
$$GNI=GDP+NFFI \text{ or } GNI-NFFI= GDP$$
Hence if $GNI&lt;GDP$ we know that NFFI must be negative. NFFI is the net factor (e.g. not just wages but return on capital and other factor income) income that Puerto Rican residents.
However, note that since it is a net factor income separate observations like that more Puerto Ricans work abroad than foreigners there are not helpful. First, what matters is the value of wages so if Puerto Rican firm hires one foreign scientist whose yearly wages are 10x that of low skill Puerto Rican worker abroad than NFFI portion from wages will be still negative even if the ratio of foreign workers in Puerto Rico and Puerto Ricans working abroad will be less than 10.  Second, since it includes income from other factors it might easily be that many foreign own companies locate in Puerto Rico and so their incomes count toward GDP but not GNI.
Hence to answer your question definitively we would have to take apart the NFFI term and analyze its components. However, problem is that such data is likely not publicly avaiable. Most statistical offices do not provide the breakdown for NFFI. I checked the world bank statistics and couple of other main sources for publicly avaiable macro data but I was not able to find any source that would provide decomposition of NFFI for Puerto Rico.
Consequently, we can only conjecture why GDP is larger than GNP. I think likely reason is that Puerto Rico offers lower tax rate than US and does so for a long time (Boles, 1988; Grubert &amp; Slemrod, 1998), which is attractive for US firms (especially since Puerto Rico is US territory with US citizenry). Subsequently, when these firms eventually get income and distribute it to their 'foreign' owners it counts negatively towards NFFI.
However, at the same time as found by Borjas (2007):

Puerto Rico attracts high-skill in-migrants and exports low-skill workers.

So the argument I mentioned above applies as well and likely every Puerto Rican working abroad contributes less to GNI than any high skill workers that come to Puerto Rico, meaning that even if large numbers of Puerto Ricans work abroad it might not be enough to offset the influence of relatively less high skill workers.
In my personal opinion, the former reason likely dominates but absent of any more detailed statistics you should take it with grain of salt.