As a general rule, American Express cards earn more reward points than Mastercard or Visa. Why? American Express charges higher fees to merchants/retailers when you use the cards, so therefore they have more money coming in that they can return to you in the form of reward points. For this reason, it's better for you to always spend on an Amex when you can - you'll get more money back.
This advice used to always be true, but the tables turned on American Express in 2003, when the RBA introduced reforms aimed at reducing Merchant Service Fees (also called the credit card 'interchange fee'). One component of these reforms was the abolition of the 'No Surcharge' rule: merchants could now enforce a surcharge for using a credit card, and the surcharge could be different depending on the card.
In practice, I've found roughly half of the merchants I buy from don't charge a Service fee on any card. In these cases, always use your Amex. For the remainder, you should always use your Amex EXCEPT where the Amex surcharge is (roughly) 1% higher than the Mastercard/Visa alternative. The reason behind this is that Amex (roughly) returns 1.5% of the transaction total in reward points, whereas a visa or mastercard generally only returns 0.5% - the difference between the two being roughly 1%. This obviously depends a lot on the cards in question, but is generally a good rule of thumb.
You may be thinking: "You want me to get a Visa AND an Amex?? You are downright loco!" Well, almost all the banks now offer credit card accounts where you get both an Amex and Visa/Mastercard linked to exactly the same account (only one credit limit, annual fee, etc.), so don't go around calling people loco so quickly, eh hombre?