The objects stored in S3 are wrapped GTS, so a single object can pack millions of data points. The actual fetching of the object is in most cases pretty fast, so the fetch + unwrapping can even be faster than fetching the same data from the LevelDB data store. If you are intending to load data for multiple series then most of the cost will be in the fetching of the objects from S3, as fetching multiple objects may need multiple requests to the S3 store.
By storing data in S3 you loose flexibility since what you are storing are chunks of series, so the smallest part you can fetch is a single chunk. If you store weekly chunks but only need 10s of data, you will still have to fetch the whole week and discard most of what you fetched.
You should chose your chunk size according to your use cases, don't store monthly chunks if your queries only need a day worth of data for example.