In the name of God, the Beneficent, the Merciful
All perfect praise be to God, the Lord of the worlds. I testify that there is none worthy of worship except God and that Muhammad

is His slave and Messenger.
Your question: Why God doesn’t forgive shirk?
Answer: First, you need to understand what’s the meaning of Shirk. Shirk, (Arabic: “making a partner [of someone]”), in Islām, idolatry, polytheism, and the association of God with other deities. If you commit shirk, then your denying His Oneness, because He has told us there’s no God but He.
God Says:
”Those who reject (Truth), among the People of the Book and among the Polytheists, will be in Hell-fire, to dwell therein (for aye). They are the worst of creatures." (al-Bayyina, 98/6).
But He has created us so that we can worship Him and this life is a test from Him, but He doesn’t even need our belief nor our prayers, because He Says:
O mankind, you are those in need of God, while God is the Free of need, the Praiseworthy. (35:15)
And He doesn’t like the indidels( those who commit Shirk, reject His Signs, mock and disbelieve in His books) according to this verse:
”That He may reward those who have believed and done righteous deeds out of His bounty. Indeed, He does not like the disbelievers.” (30:45)
So you see? it’s a test from God, those who believe will be rewarded, or punished first and be rewarded after this, and those who disbelieved and died upon it, will never ever get the reward but only the severe punishment. As per the the verse:
”And certainly, We shall test you with something of fear, hunger, loss of wealth, lives and fruits, but give glad tidings to the patient.” islamqa