A freelance contract should include project details, deliverables, timelines, payment terms, confidentiality clauses, and termination conditions. A clear and concise contract helps protect both the freelancer and the client.