Characters begin in real observation, no matter how far they may stray from that initial spark. For example, in one of my books, an important character is a talking paper giraffe. That giraffe began in two places: in a painting I saw and in some timid people I know who have performed acts of courage when the circumstances called for it.
It’s easy to find “character sheets” on the Internet, and these are probably helpful for some authors to fill out in advance. I follow a somewhat lazier route than deciding every detail about my characters in advance.
I begin with the core idea of the character (e.g., “a bitter arsonist”) and then fill in details as necessary to advance the story, reveal motivations, or provide texture. As I fill in these details, I note them on a sheet. This keeps me from, for example, having someone who is deathly afraid of spiders but keeps a pet tarantula (unless this conflict is part of the story).
Each detail filled in constrains the story in some way, and so I find that not filling things in until they’re necessary keeps me from having to remember which details I’ve mentioned: if they’re in the sheet, I’ve mentioned them. This solves some problems. If I decide, for example, that the character has (to be cliched) “stormy gray eyes” because it fits a scene, I don’t have to worry (unless it’s noted) that the character was earlier described as having blue eyes. People notice this kind of inconsistency.
If a character undergoes a significant change (e.g., death of a parent) during the book, I note where it happened at.
How do you create and keep track of your characters? In my experience, they like to run wild.