The main points that should be in the contract are
This is probably the most important part of a freelance contract and it is crucial that you make sure at the outset that any conditions that the customer might have in mind do not penalize you. For example, it is important to make it clear from the outset whether you want to be paid a lump sum or per hour (Link: https://kontist.com/posts/freelancer-hourly-rate-charge), and when you will be paid. For a large project that spans several months or is open, you must set the payment frequency (for example, monthly).
Some clients are very picky, some can not really decide what they want from you. That's why you have to have a clause that sets a reasonable number of revisions, after which you'll get an amount paid per hour or correction, otherwise you could be stuck with work endlessly. Having such a clause will not only save you from perfectionist customers but also make them focus more on their desired changes and hopefully make them think more carefully about their choices.
If you have ever heard the dreaded words, "Hey, I just thought of something big that we really need to include in this project!", you will understand exactly what this clause ensures: always put the exact details of the scope of the Project. You may also feel a little triggered like me at this thought, so sorry about that. You have to have a very clear idea of what is in the contract and what is not, because endless unpaid extra work should not be one of your tasks. If a client wants something extra, a clause should say that extra work is negotiated separately and will make you pay for everything you do.
Depending on the type of freelancer you are and the type of clients you are working for, there are various types of copyright and a number of issues that may arise. Many customers want the work done for them to be unique. This means that the granting of copyright should be at least for the first use, and there are all possible options and nuances for certain types of work.
Sometimes you are the one who wants to set a deadline, but often the client himself will have a deadline in mind. Having that set out in a clause in the contract is something that will keep you and your customer focused and should help prevent inappropriate delays.