How many domains are you talking about and how many lookups?
- Personally I’ve found HE’s free service (https://dns.he.net) to be fast and reliable, and is probably my first choice.
- If you have below 50 RR’s and 500k/month, then NS1’s free plan gives you serious features like API and GeoDNS, but you will get seriously reamed if you go above the limit (like $8/million lookups).
- Zilore gives you anycast servers and a high traffic limit, but no API or GeoDNS and only 5 domains in the free tier.
- AWS Route 53 is reliable and lookup PAYG rates are cheap, but the per-domain charge makes it not so good if your lookups are spread across many domains.
- Oracle Cloud DNS is not part of their free tier, but I’ve actually found it to be very good. Lookup speeds are excellent and there’s no monthly per-domain charge, just pay for lookups at something like $0.85/million which in many cases works out to a few pennies per month. You also get API access, but health checks kind of suck at $0.30 per endpoint per month (OK if you’ve got one or two, but it adds up fast if you’ve got many).
- If you have an account with LunaNode, they have a free DNS service which isn’t bad, but the NS are in Canada & France with no anycast. But free and has health checks and GeoDNS.
Note that you can also use combinations of the above, for example if you like the interface of NS1 but don’t like the traffic limits, then you can use NS1 as a hidden master and HE.net as the slave which is published in your NS records.