1. A computer-implemented method comprising: receiving a first customer query; receiving a second customer query; determining that the first customer query is in a first language; determining that the second customer query is in a second language different from the first language; selecting a first template from a plurality of templates in a corresponding plurality of different languages, wherein the first template is of a type that answers the first customer query, and the first template corresponds to the first language; selecting a second template from the plurality of templates, wherein the second template corresponds to the second language; populating, using a processor, the first template with first template data, wherein the populating the first template is performed by a first thread in a multi-threaded process, the populating the first template is based at least in part on a first set of locale rules associated with the first language; formatting, based at least in part on the first set of locale rules, the first template data in the first template, wherein the formatting the first template data comprises obtaining a first pointer to a first set of data, the first set of data is associated with the first thread, and the first set of data corresponds to the first set of locale rules; formatting second template data in the second template; and transmitting the formatted first template data.