Why does the fill factor in SQL Server default to 0 (100%)? I understand fill-factor, pages and index structure and I therefor understand why a 100% fill factor is a rare best practice. So why does it default to 0 (or 100% ) by default? Why not 90 or 95?

Is there something I'm missing?
Just throwing out a few suggestions here as to why Microsoft would do this:


They have geared their default to be best possible OLAP performance (less page reads with a fill factor of 0/100)
They are assuming that INSERTed data will most likely be at the end of the table, making the extra space per page useless
They are assuming that typically UPDATEd data will not lengthen row data very often, causing a page split


This is just guessing here.  The only people that can really answer that question accurately is the SQL Server team themselves.