You probably want to set the buffer for json to something larger than 1024, the costs for a larger buffer are then amortized over time. This depends on you how often you expect errors and if the JSON really has a layout where your error property is fairly early (e.g. first loop), but I don't know how far that is guaranteed.
ReadOnlySpan<byte>
properties e.g. https://github.com/stevejgordon/ElasticSearchClient/blob/e57df08eb9aed61fcf607dd8a06e1a467e6ae5c5/src/ElasticSearch.LowLevel/BulkResponseParser.cs#L14 see https://vcsjones.com/2019/02/01/csharp-readonly-span-bytes-static/ for a detailed description.jsonReader.CheckRead
instead ofRead()