At the moment, chain-based ranking history would just add additional complexity with a relatively small benefit.
If all they do is broadcast records as custom_json, they'd still need to keep a copy of those records in their own database. The small benefit would be that the records could be reconstructed from chain data, if need be.
A better solution would be to have a smart contract running in Steem Engine, so that the data could be queried by API, thereby reducing the need to have a copy of the records. Unfortunately, Steem Engine doesn't allow arbitrary contracts yet.
RE: Segment Marketing vs. General Marketing