Preheat the grill to 425-450°F (220-230°C). Remove the neck and giblets from the cavity. Check both ends! Using kitchen shears, trip any excess skin and remove any pin feathers. Do NOT rinse the turkey. Pat dry with paper towels.
Tuck the wings in, and sprinkle the salt and pepper inside the cavity. Stuff the onions, garlic cloves, and fresh herbs inside and truss the legs using food-safe twine.
Place the turkey in a disposable aluminum roasting pan, breast side up. Use a silicone brush to coat turkey with melted butter and season with salt and pepper.
Turn off the burner just below the turkey and leave the side burners on. This way there isn’t too much direct heat for too long. The indirect heat is plenty hot enough to fully cook the turkey.
Close the grill lid and after 30 minutes, add 1 cup of water or chicken broth/stock to the bottom of the roaster. If you notice the turkey is browning too quickly, tent it with aluminum foil.
Baste the turkey with the juices every 20-30 minutes. Halfway through the cooking time, rotate the roaster and continue cooking and basting until it’s done.
Insert a kitchen thermometer into the thickest part of the breast. Once the internal temperature reads 165°F/74°C, the turkey is done. Remove the turkey from the grill immediately.
Allow the bird to rest for a minimum of 30 minutes and even up to 1 hour before carving. This gives the juices a chance to settle and redistribute throughout the entire turkey, keeping it juicy and moist.