At my company, we have a legacy database with various tables and therefore many, many fields.
A lot of the fields seem to have large limits (ex: NVARCHAR(MAX)
NVARCHAR(MAX)
Yes, the query optimizer can guess how many rows fit in a page, if you have a lot of varchar fields that are larger than necessary, SQL Server can internally guess the wrong number of rows.
varchar