There’s many reasons for this to happen.
As ads are from start of the month to the end of the month and then there’s the whole time in between, such as, ads from 2nd to 7th of the month are not paid in the current payout, but are part of the next payout, so any BAT you got from the 2nd to today will be paid out next month.
Another reason for this is the ad tokens are not sent to brave servers, there’s a specific time that the tokens are sent to the brave servers (batched) and only they are eligible to be redeemed - this means that if for some reason you didn’t open your browser for few weeks and you had a bunch of ads waiting to be sent to the servers - they will not be eligible to be redeemed and will fall into next month’s payout.
Last thing, Estimate is exactly what it sounds like - it means that it’s a guess, based on a mathematical equation which is not perfect, based on many factors like number of users, number of ads, how much brave got for them ads and how much brave has to pay users for them ads - they then calculate the real value at the payout day.
[Unlikely and Doesn’t Explain your missing BAT]
One more thing is, Brave rounds BAT, if for example you have 1.600 Estimate, it will round it to the closest 0.250, so in this case you would get 1.500 BAT instead of 1.600.
And if you have 1.650BAT estimate, you’ll get 1.750BAT.