Do American citizens have to have a valid passport to enter Canada?
Not necessarily. They should have a valid document that proves citizenship and a photo ID. That is all the Canadian CBSA will need at a land crossing. Returning home, however, may prove troublesome if that is all one has. US CBP requires a WHTI compliant document of persons applying to enter the United States. To not have such a document will most likely mean a visit to secondary inspection and delays while CBP verifies the authenticity of the documents and gives the traveler a lesson on acceptable documents when crossing the border.