А какие проблемы размер транзакции в байтах прикинуть?
Вот с комиссией да, там есть сюрпризы. То есть в целом тоже понятно сколько помещается в блок, сколько сейчас транзакций в мемпуле, какие у них комиссии, что в среднем блоки находятся раз в 10 минут, так что можно прикинуть сколько нужно выставить, чтобы по приоритету попасть в ближайший блок или два, например.
Но это в теории. На практике "в среднем раз в 10 минут" может оказаться частностью, что вот сейчас сеть второй час не может блок найти, и твою транзакцию уже по приоритету опустили сильно вниз новые, с бОльшей комиссией. Тут как вариант только с RBF отправлять транзакцию и докидывать комиссию, в случае наступления подобных событий.
С другой стороны не хочется сильно переплачивать, т.к. если попадаешь в блок, то совершенно не обязательно быть самым щедрым, тут или попадаешь или нет, никаких преференций за переплату дальше нет.
Т.е. не остается особо вариантов, кроме как смотреть статистику, считать процентили, постоянно молотить мемпул, чтоб получать в реалтайме данные о транзакциях в нем. Мы для себя такую
утилиту запилили, потом выложили в паблик, когда убедились, что оно более-менее нормально предсказывает. Как настраивать приоритеты тут все равно нет какого-то общего правила, кому-то надо в ближайший блок, а кого-то и в течение часа отправка устроит. Так что лучше в целом понимать, что в сети происходит, чтобы принимать решение.