All perfect praise be to Allah, The Lord of the Worlds. I testify that there is none worthy of worship except Allah, and that Muhammad is His slave and Messenger.
It is obligatory for the one who has broken his oath that he expiates for it. The expiation is clarified in the Saying of Allah (which means): {… but He will impose blame upon you for [breaking] what you intended of oaths. So its expiation is the feeding of ten needy people from the average of that which you feed your [own] families or clothing them or the freeing of a slave. But whoever cannot find [or afford it] - then a fast of three days [is required]. That is the expiation for oaths when you have sworn.} [Quran5:89]
The expiation is due immediately according to the view of the majority of scholars, which means that whoever delays it while he was able to expiate is sinful. On the other hand, whoever delays expiation because of ignorance, we hope that there is no sin on him, as Allah Says (what means): {Our Lord! Punish us not if we forget or fall into error.} [Quran2:286] He (Allah) said: 'I have done so (as requested)'; as in Sahih Muslim in the narration by Ibn ‘Abbas .
Ibn Kathir said in his Tafsir: {Our Lord! Punish us not if we forget} meaning by that: if we missed an obligation because of forgetfulness, or also we committed a sin, {or fall into error.} meaning: or fell into a prohibition, or made an error while ignorant of its Islamic ruling.” [End of quote]
Thus, the compensation for the delay is to take the initiative by paying the expiation and being waived from its liability.
Allah knows best.