I have only ever owned one tank bag. It is an SW Motech unit that attaches to the gas cap ring. It avoids straps and velcro, and it works on BMWs with non-metal tanks. Even so, I have not used it a lot because it seems like an obstruction, and you have to remove it for every fill-up. I have owned a couple of tail bags though, and find them almost as convenient. The former GS had a top case, so there was no need for a tail bag, but on the GSA I am undecided, so I decided a tail bag would be good for now and maybe permanently. My small Nelson Rigg tail bag fit onto the tail rack with room to spare. The buckles and straps made it secure, but kind of a mess under the rack. It also was good for a few items, but not big enough for a rain jacket or a few items from home depot.
I considered the tank bag, but BMW has changed the tank ring, and so I needed another adapter and a job to convert the ring. That was all the discouragement I needed, and I put it on the BCR instead and poked around online. A few forums made had positive things to say about the MotoFizz bags from Japan. They are versatile, tough, come in three sizes, are reasonably priced, and fit the GS tail rack. I read a bunch of reviews on other sites, and the one negative I saw was that they are not waterproof. They do come with a raincover that needs a bungee net to stay on. I have a bungee net, and my other bag is not waterproof either, so I decided to grab one.
I got the small, and was immediately impressed with the bag. It fits the rack perfectly, has enough room for the items I mentioned, and has expansion chambers to hold even more. It has convenient side compartments, and some neat drink bottle holders. There is also a useful stretch cord web on top for items you want to carry on top. Only a few hundred miles so far, but an impressive piece of kit.