When you use our BigQuery Downloader for Google Sheets you will eventually notice that query results are being inserted in 1000 row batches. So if your query result is 20k rows, you will see that the downloader actually does 20 inserts with 1000 rows in each.
You are probably wondering why the downloader just does not dump all rows into the spreadsheet at once.
The reason is that the 1000 row inserts are the most stable approach. There are certain limits on variable sizes and we simply cannot store large amounts of data into one variable because this step would simply fail when the query results are “too big”.