Датаграмма - набор байт. Что вы в нем закодируете - ваше усмотрение. Но как бы для того, чтобы json стал набором байт и был распознан, надо ещё определить кодировку, а чтобы он корректно прочитался, надо обеспечить сохранение порядка пакетов и корректную разбивку по пакетам большой порции данных. И как правило от UDP ждут быстрой обработки, а нагружая содержимое датаграммы jsonом (который, кстати, при определенных условиях может долго парсится), теряется смысл.
Самое простое кодировать значения байтами и битами.