TBH, AMD should have not made this 7900XTX 24GB. But I can see where the limitation would be, as aiming for 16GB would bring the memory bus back down to 256-bit. Maybe a possible alternative would've been to go GDDR6X (not sure if NVIDIA still has an exclusive contract with Micron to use this variant) but at 256-bit to get the same bandwidth, price permissive. This maybe could have gotten the price down to around $800 to $900 MSRP perhaps?
7900XT would've been in a good spot at $699 if there wasn't still a big stock of 6950XTs at its launch last year. It technically is the namesake's succesor. But now that its dwindling its looking like a good deal (discounted) if one was planning to upgrade to a 6950XT in the first place.
I believe the reason this GPU is 24 GB is one of practical capacity, as 12 GB would prove limiting and a regression from it's predecessor.
The real reason for 24 GB is bus width, using a 384-bit design for increased bandwidth, it's entirely possible that an eventual 4th gen RDNA regresses to 256-bit/16 GB again but instead have a two or even three times larger last level cache attached to each MCD. I don't see them doing a 512-bit design like Hawaii/Grenada again.
The large 128 MB cache in RDNA 2 worked well for them, even considering the apparent deficiency in memory bandwidth displayed by 256-bit GPUs when driving extreme resolutions.
The RTX 4080 is another example of a balanced 256-bit design bolstered by a large cache (in Ada's case a large L2), Navi 21 and AD103 are quite alike in this regard, software and drivers can make excellent use of their resources. The RTX 4090 is faster but it's not proportionally faster than the 4080, despite having almost twice as many CUDA cores (16384 v. 9728) and 50% larger bus width.
You're looking at almost 70% more resources for 20-25% more performance, and while it's true they can still build a 4090 Ti with all of the AD102 resources it's going to be another 20-25% over the 4090, making it 40-50% faster for quite literally 100% extra resources. This indicates that at the very highest end, the GPU designs currently aren't scaling very well despite the vast amount of computing resources available.
This may have contributed for AMD to choose not to release a GPU larger than 96 CU to begin with.