First, understand what a character is in fiction. A character is not simply a person. A character is an instrument for making a story work. You can't simply sit down, dream up a bunch of people, and then expect to insert them into a story and have them work. Characters have to be designed to drive the story. Each character has a specific job to do in driving the story forward. Any characters that don't pull their weight in driving the story are superfluous and should be jettisoned.
What are the functions of the various characters? First, of course, there is the protagonist. They are the person that the story actually happens to. They are forced out of their comfortable existence by an event that forces them to go on some sort of journey to put something right. To put that something right they will have to make some choice of values that they really don't want to make. That is the crisis of the story. Once they make they choice, they have to prove that they have made it and see it through to the end. That is the denouement of the story.
So, your first character is the protagonist. They need to have a problem, and two values that will conflict with each other and between which they will have to choose in order to address the problem.
Then there is the antagonist. You don't have to have an antagonist, but they are frequently used. Their role is to make life difficult for the character. In many cases, it is their actions that create the problem that the protagonist has to solve. But the thing that creates the problem for the protagonist does not have to be another character. It can also be nature, or the protagonist themselves.
Then there are the supporting characters. What is their role? Fundamentally, their role is to see the protagonist along the road to facing their choice of values and solving (or not solving) the problem. Since the protagonist does not want to make the choice of values that occurs at the crisis (who would?), the job of the supporting characters is twofold:
Support the protagonist in facing the choice and dealing with the consequences. This may mean giving them advice or fighting beside them.
Prevent them from avoiding the choice. This means acting in opposition to them every time they try to wriggle out of the choice. It could mean distracting them. It could mean fighting them when they try to find a solution to the problem that does not require the choice they don't want to make. It could even mean encouraging them to abandon the quest -- but if they actually abandon it, then the story dies, so these characters actually end up leading the character back to the choice.
There are also tertiary characters who just fill in the scene or perform ordinary tasks like taking the protagonists drink order. They should be given a bit of color, just so they don't feel cardboardy, but they don't really matter much. One bartender, in this case, is as good an another. Unless they give the protagonist a vital pep talk or clue, in which case they are a secondary character.
Okay, so now you know what job each of your characters has. Does everyone on your list actually have a job to do? If not, it's pink slip time.
Okay, you are down to your actually useful cast. Now, when do you introduce them into the story and how? You do one of two things with them:
You introduce them with they are needed to do their job.
You introduce them earlier to foreshadow the role they are going to play.
When do you foreshadow them? You foreshadow them when it would seem contrived if you introduced them only when they were needed to do their job. For instance, you need a character with a rope to pull your protagonist out of quicksand. Well, if that character just turns up out of the blue right after your protagonist fall in quicksand, that is going to seem pretty contrived to the reader. So you introduce him and his rope earlier in the story so that when your protagonist falls in the quicksand, the reader goes, oh yes, guy with the rope, he will get our hero out of the quicksand.
So what happens in that scene in which the guy with the rope is foreshadowed. Simple: our hero does the guy with the rope a good turn, so that when our hero falls in quicksand, the guy with the rope owes him one. Thus the moral order of the story is maintained. This should happen far enough in advance of the quicksand incident that the reader does not immediately see what the writer is going, but not so far back that the reader has forgotten that the guy with the rope exists.
Every character is part of the moving parts that make a story run. Understand what part every character plays and when they need to appear in order to play their role in the story. Introduce them when it is their time. Not before. Not after. When you introduce them, tell us what we need to know about them so we will understand the role they play when they play it. Not more. Not less.
There is no part of your story whose function is to introduce characters just so you can use them later. Every entrance and every exit performs a specific role in the story. Understand what that role is, and you will know when and how to introduce them.