The cost of an ENS name is dependent on how many characters it contains:
Number of characters
Three and four-character names cost more to reflect the small number of these names available. If a name was recently released from the expiration grace period, a decaying price premium is also applied.
When looking up an ENS name the ENS Manager App will display a rough estimate of your registration cost:
Gas prices might fluctuate after this estimate, especially if you don't complete the registration immediately.
Why are fees collected?
The primary purpose of registration fees is as an incentive mechanism to prevent the namespace from becoming overwhelmed with speculatively registered names.
A secondary purpose is to provide enough revenue to the DAO to fund the ongoing development of ENS.
ENS governance will not enact any fee other than for these purposes.
Due to the way Ethereum works, all transactions on the Ethereum blockchain incur a gas fee in addition to the registration fee. The price of gas constantly fluctuates depending on Ethereum congestion.
By using a gas tracker it's possible to pinpoint times when gas is low to save money.
There's an additional premium fee attached to newly expired names which starts at $100m and declines exponentially to $0 over 21 days.