Nice article. You touch upon a very powerful, yet under-utilized feature - especially for make-shift integrations (more on that later).
I've been successfully connecting BQ to Google Sheets for a while, but only recently stumbled upon a shift in how data is sent to BQ from Sheets. At the beginning, the "data" in the cell was sent in it's original state (unformatted) and one could reliable use Numeric data types for numbers in Sheets - regardless of the type of number formatting applied (cell says "123456" but formatting could display $123.45 or 1,234.50 in Sheets - BQ would always get 12345. Only recently the formatting is now brought over to BQ - breaking tables that expect numbers as type Numeric (not string).
Have you experience the same behavior?