For those that assumed the compression was all about the pipe - here is the follow-up.<p><a href="http://malctheoracle.com/post/json-compression-part-deux" rel="nofollow">http://malctheoracle.com/post/json-compression-part-deux</a>
This looks a lot like the first compression step in JSON HPack: <a href="https://github.com/WebReflection/json.hpack/wiki" rel="nofollow">https://github.com/WebReflection/json.hpack/wiki</a>
If you care about size, then the first step should be choosing the right protocol for the task, e.g. Protobufs.<p>Changing your data structure for the sake of compression harms the main advantage of JSON: convenience.
If you're taking this approach, why not just text/csv as your data format. If you already <i>know</i> the field order/names you can even omit the header row completely.