You can file your lawsuit for breach of contract anytime there has been a material breach of contract.  A material breach of contract is one that goes to the basis of the bargain; the heart of the contract.  Failure to pay in accordance with the terms of the contract constitutes a material breach of the contract.  When a material breach of the contract occurs, you can suspend your performance and immediately file your lawsuit.  If the contract is severable or divisible into lots, this would only be a breach of this particular item and not the entire contract.  For example, if each of your freelance assignments was considered a separate assignment and let's say you had been paid on one, but not another, the breach of contract would only apply to the assignment on which you had not been paid and not the entire contract.  In your case, since you have not been paid for any freelance work, the entire contract has been breached.  As mentioned above, when there is a material breach of the contract, you can file a lawsuit for breach of contract without tendering your performance (doing further work).  You will need to file your lawsuit for breach of contract prior to the expiration of the applicable statute of limitations or you will lose your rights forever in the matter.  A lawsuit can be filed where the plaintiff resides or where the defendant resides or where the claim arose.  You are the plaintiff.  The company is the defendant.  Depending on the amount you are owed, you might be able to file your lawsuit in Small Claims Court.  Your damages (the amount you are seeking to recover in your lawsuit) should also include court costs.  Court costs would be the court filing fee and process server fee.