When generating a table of data on a web page, I usually give the user the option to page through the data (10, 25, 50, 100 rows per page) or to display it all on one page. This works fine for a few hundred rows, but displaying thousands of rows on one page can take a long time to generate and transmit to the browser.
Is there a rule of thumb or a best practice for determining the maximum number of rows to display in a table on one page? I.e. when is it best to suppress the option to display all rows and force the user to page?
“When performance suffers” would be my answer, which you need to decide via testing (on the slowest and crappiest browser; IE6).
If the user needs the data as a whole you can always offer it up as a CSV download.