I use Marriott exclusively for Marriott spend as it 1) gets you 5 more points, 2) gets you 15 nights credit and 3) pays for itself with the free night certificate.
I use Citi AA for those places that don't take Amex.
If you travel internationally to any degree a Capital One whatever can be worth it just to save the 3%.