I'm looking for a software that helps me develop and organize the characters for my novel.

What I want:

  • something like a filesystem, with a file for each character
  • it should have or allow me to create categories like name, gender, age, backstory, and so on
  • once created, these categories should automatically be available for each character
  • adding images, text files, movies and stuff, or linking to these
  • it would be nice if it somehow interacted with my writing and timeline software (Scrivener and Aeon Timeline)
  • creating relations between characters (married to, boss of, lives next door to, etc.)
  • these relations should not be limited in number

What I don't need:

  • character development from archetypes (as in Persona) or a list of mental disorders (as in Character Writer)

What I know of:

  • Persona: looks nice, but has these stupid character development tools that I don't need
  • Character Writer: looks awful

It does not have to be specialized software, but something with the above functionality. If you know of some software that does all that but has some other originally intended purpose, that's fine, too.


After some experimentation I have found that a spreadsheet works best for me. I use Excel, because I have it, but will try other speadsheet software before my next project.

In the spreadsheet, each column is a character and each row is some aspect of that character, such as traits (name, height, personality) and structural elements (development). For every story I write, I can create how many and whichever rows I need. For example, in some stories the outward appearance will be more important, so I will have rows for eye color, clothing style, and which part of their body hair they don't shave; in other stories the past of the characters is more important so the backstory row will be split into many other rows such as kindergarten, relationship to siblings, or summer camp in 1963. Colums can be added and moved around, too, which is nice if you want to see different characters side by side and work to make them more different or explore their relationship.

I even partly develop character arcs in the spreadsheet. This question contains a (made-up) example of what this might look like: Outliner (software) with annotations for OS X or browser based (but offline!) For more detailed work on the character arcs, I switch to pen and paper and draw the kinds of graphs I have mentioned here: To visually and logically plan out stories

What I dislike about Excel are:

  • the vast functionality that is unrelated to writing text into cells, which makes the program cumbersome to use for this purpose
  • the visual clutter that comes from this functionality
  • the height limit on cells
  • limited or awkward styling and editing options (e.g. newlines within cells or alternating background adapting to newly added rows)

Despite these drawbacks, I find using Excel to create characters very helpful. Unless I can find a better tool, such as a spreadsheet for text or a text editor with columns and rows, I will likely stick with it.

  • 2
    Wow, just looked at Character Writer -- is that sort of software widely used? Would that explain the two-dimensional stereotypical characters in so many books? Still, imagine how much better Dickens could have been with such a tool at his disposal. Sep 19, 2013 at 22:08
  • 1
    Favourited; really want to see some answers to this.
    – CLockeWork
    Sep 20, 2013 at 8:10
  • 1
    This resource doesn't have everything you want, so I'm leaving it in a comment instead of an answer. Charahub. I only briefly experimented with it, but I liked it and I can see it improving over time. It supports character relationships, at least. They had a little server trouble this weekend, so if it's down try checking back in a day or two.
    – Terri M.
    May 27, 2014 at 18:37

12 Answers 12


Custom Meta-Data in Scrivener. You can do some custom fields in Scrivener. See the "Custom Meta-Data" button at the bottom of the inspector (it looks like a little tag). Here's a photo where I added a few fields:

Custom metadata fields in the inspector

You can add fields by clicking the gear button.

When you add a metadata field, it becomes available for all documents in the project.

You can also view these fields in the outline:

Custom metadata fields in the outline

You can put multiple paragraphs into the fields if you want, but I prefer subdocuments for that.

Fields appear in all docs. You probably don't want custom character fields in your plot outline, and vice versa, so that might nudge you to keep characters in a separate project. Dunno.

Limited support for relationships. This custom metadata feature doesn't let you easily add relationships from one character to another. In my outline photo, you can see a simple relationship, but it's just a text field. You can't navigate it in both directions (uh, or in either direction).

Relationships via wiki links. Over time, I found that I could create the relationships I needed as "wiki" links from one Scrivener doc to another. I'd have to add a link from each related doc to the other. And if the relationship changed, I'd have to edit both docs to express the new relationship.

Relationship docs. For significant relationships, I often create a Scrivener doc for the relationship. I put the "relationship" doc into the folder with the most important character. This gives me a place to put all of the details about a relationship. As long as the relationships (who relates to whom) are reasonably stable, this works well.

Super NoteCard. A few years ago I used an app called Super NoteCard. It wasn't great for writing, but it was much more flexible for organizing things. I remember that it allowed arbitrary relationships among cards.

  • What I miss in this is a side by side display of different characters.
    – user5645
    Sep 27, 2016 at 9:23

I suspect people will object to me saying this, but still, wanted to give some food for thought:

Why not just keep plain text files, or documents made in whatever word processor you prefer?

I'm 32, and I've been writing on a computer since I was 18, so I have about 14 years of character and worldbuilding documents built up, for several different universes.

The trouble with deciding to put your character or world information in some flavor of software-of-the-month is that it tends to store data in a custom database or flat file schema. As you write more and more, and years pass, you are putting yourself in a position where, if the data format the software you use isn't easily transferable to a newer program, you can abruptly find yourself in a position where your old data is difficult to access because your operating system changed, doesn't support your old program, and nobody bothered to program an easy data migration path for YOUR software to whatever the new thing ends up being, because it was so niche.

You'll be more insulated against this sort of issue if you decide on a naming scheme and just keep text files, or word processor files, on your hard drive or cloud drive in some sort of order. Since word processors in general are so widely used, you KNOW there'll always be a way to convert text files or word processor documents to another format, and it probably won't be all that painful. But if you start using really custom software, you might be in a frustrating position later with your worldbuilding and characer data.

Or...you might not--maybe you're technical and you don't mind doing data migrations. I'm technical and not afraid of software and honestly I still think they're a PITA and time-consuming. I'd rather spend my time writing than sorting out my data and putting it into a new format.

I just wanted to give some food for thought before you or anyone tries to pick software thinking it'll work wonders for the writing process.

Writing really comes down to words on a page...fancy databases are often good timewasters but can distract you from actually writing, and in the long term can make your old data difficult to access if you want it later.

  • 2
    I agree. I'm not quite a dinosaur, but as a full-time writer, I might have 3 books going on at various stages of development and submission status. Paper notecards with a folder and ink pens work great. If I'm feeling anal, I'll date when I changed Character A's injury profile or some such.
    – Stu W
    Feb 22, 2016 at 13:08

Scrivener has features that can be used for this, specifically, templates. You can put all your character notes in one file and use that as a template for other characters. Or, if you insist on having them in separate files, you can create a folder for each character, but you might need to manually copy each file for each new character (may be as simple as an Option-drag).

The major thing missing would be the relationships between characters.

  • 1
    This is how I do it too, but it doesn't have the database field option which the OP is looking for. Sep 20, 2013 at 14:37
  • 1
    Thank you. Actually, just after I asked this question, I googled some and noted that Scrivener can do some of what I want. shame Still, it would be nice to have some more functionality than Scrivener appears to offer, where the character sheet is basically a text file with some subheadings and the option to add an image. I haven't really done any serious character development yet (letting them develop themselves in the telling), so I'm not exactly sure what I might need, but I so love my timeline software that I want something like that for characters as well. Maybe I have to program it ...
    – user5645
    Sep 20, 2013 at 16:32
  • 1
    I agree! Having this information at your fingertips is very handy in the editing phase, when you want to check for consistency. Sep 20, 2013 at 16:38

You may want to have a look at KeepNote. It's open source and runs on a number of different platforms (Windows and Linux packages are available), but it doesn't do everything you want out of the box. To address your particular considerations:

  • something like a filesystem, with a file for each character

Pretty well check: it allows you to create categories and subcategories to organize your data any way you prefer, and it supports categories with and without text (as "pages" as KeepNote calls them can contain subpages as well).

  • it should have or allow me to create categories like name, gender, age, backstory, and so on

Check: just create another page (as a sibling or child to an existing page) to put the information into.

  • once created, these categories should automatically be available for each character

No do. It can probably be done with a plug-in, and Import Folder Tree looks promising at least as a starting point, but it isn't done out of the box.

  • adding images, text files, movies and stuff, or linking to these

Pages are (X)HTML web pages so in principle you can add anything that can go onto a web page. The built-in editor is somewhat minimalistic but does include many of the basic features for text editing.

  • it would be nice if it somehow interacted with my writing and timeline software (Scrivener and Aeon Timeline)

No do, at least out of the box.

  • creating relations between characters (married to, boss of, lives next door to, etc.)
  • these relations should not be limited in number

You can make a separate page or set of pages for relationships that describe them, and KeepNote supports full-text search, but there is no native support for something like this that I know of.

One nice thing about KeepNote is precisely that it keeps its data as HTML files along with some XML metadata files in a simple file system directory hierarchy, so backing up your work, working with the files in different software etc. is trivial.


As requested, here is a little more insight into Charahub.com. It's a website intended for writers and artists to store and/or share their characters in a central location.

Screenshot of Charahub's user profile

Free accounts have a limit of a hundred characters upon signing up. Additional characters may be earned through referral. You can divide characters into user-created groups.

Screenshot of Charahub

Screenshot of Charahub

The profile and question sections have set questions that you can fill out. I believe user-created questions is in development right now.

Screenshot of Charahub

You expressed some concern over privacy. Charahub sets your character profiles as public by default, but it's easy to change. I tested this specific feature by searching for my characters. I can confirm that it worked as expected. Once set to hidden or private your character profiles are no longer searchable.

Screenshot of Charahub

Free accounts are able to upload ten images per character, each image with a max image size of 500KB

Screenshot of Charahub

Screenshot of Charahub

The panel called 'Links' is a flexible way to create relationships between your characters.

The features you were looking for that are not in Charahub are:

  • The ability to create new questions and/or categories.
  • The ability to add videos and/or text files directly into the document.
  • Any function that relates to third-party writing software, such as Scrivener.
  • Limitless character creation, the maximum for free accounts is a hundred characters. For gold accounts ($3/mo) you get 250 characters, 25 images/character with max image size of 1024KB, no adverts, and priority support.

Lastly, this website is in its infancy, so it's not a known quantity. If it works for you, excellent, but definitely take precautions. Back up your work to an offline location.

  • 1
    If all my characters end up looking like the Lowell siblings I'm gonna sign up, lol. Thanks for the great summary!
    – user5645
    May 28, 2014 at 10:44
  • 4
    "Please update your account to enable 3rd party hosting"?
    – user
    Aug 31, 2017 at 11:03

I am looking for similar software and i'd be interested to know if you've found anything since you asked this question. The only thing i've found in my search is a piece of software called WriteItNow.

In regards what you were seeking, this is what i've learned about WriteItNow from their Demo (which, by the way, does not allow you to save... so i didn't get that deep into the software):

something like a filesystem, with a file for each character

It appears to be project-based, somewhat like Scrivener... so each character has their own page, but it's all contained in one project file. However, unlike Scrivener where the .scriv file is really a folder, the WriteItNow .wnwx file is just a single file... so it wouold probably be good practice to export the data from the file on a regular basis... just in case.

it should have or allow me to create categories like name, gender, age, backstory, and so on
once created, these categories should automatically be available for each character

It generates a blank form for every new character, with tabs for Personality Traits, a Picture, Relationships, and written details.

adding images, text files, movies and stuff, or linking to these

Under the "Details" tab for a specific character, clicking "Links" in the menu will allow for linking to files, websites, and other information within the project.

it would be nice if it somehow interacted with my writing and timeline software (Scrivener and Aeon Timeline)

Not directly, but it allows for exporting to basic formats (doc, pdf, txt, rtf, html, epub). It also allows you to print the charts it can generate (such as the relationship chart).

creating relations between characters (married to, boss of, lives next door to, etc.) these relations should not be limited in number

Allows for unlimited relationships and relationship types as far as i can tell. Also allows for the creation of custom relationships. And it generates a relationship chart.

Here's a screenshot of the Characters Tab: enter image description here

  • Even just looking at that screenshot, I see that this software falls into the trap of falsehoods programmers believe about names. That may be acceptable in software meant to deal with the real world, but I feel like it is an inexcusable oversight in software that may just as easily be used about completely imaginary situations. I suspect this can be worked around, but really, combining "first name", "middle name" and "last name" into a single "full name", and have another "given name", would be better...
    – user
    Aug 31, 2017 at 11:06

Just wanted to mention The Novel Factory here, as keeping track of characters was one of the main reasons it was developed.

Disclosure - I am the creator of this software.

This is a screenshot of the Character Overview section, where you can see a list of all your characters, with key information displayed:

Novel Factory writing software character overview

Then you can open up each of the character 'cards' and record tons more detail about each of them:

enter image description here

There are various templates to prompt your character development:

enter image description here

enter image description here

The Novel Factory is free to try, to see if it's what you're looking for:

  • This seems like an attempt at self advertising, while the software may be what the OP needs, please disclose association to them as to eliminate any attempt at bias as the goal for us is to get people to use appropriate tools, not be tricked into ones from self promotion.
    – ggiaquin16
    Aug 30, 2017 at 15:43
  • Apologies - I have added a comment for disclosure. Thanks for your patience as I get familiar with the rules. Aug 31, 2017 at 8:48
  • 3
    Since you're the author of this software, I really encourage you to read and think about falsehoods programmers believe about names. Why should an imaginary character in a possibly made-up culture have a "first" and a "last" name? Consider changing those into a single full name field, and add another for nickname or name the character goes by. That would make the software much less Western-human-civilization-centric, and while it won't solve everything it should be a major step forward.
    – user
    Aug 31, 2017 at 11:10
  • Very interesting. We did actually agonize over whether to have a single first name and last name or just a single 'name'. In the end we settled on having first and last because people who didn't want it could just ignore one or the other field, whereas if people did want both and we didn't have it, there wouldn't be a good option for them. However, I appreciate your point. We've had similar thoughts about 'gender'. While we've tried to keep the options broad, ideally in the future we'll offer people the option to add custom genders for various alien species... Aug 31, 2017 at 14:42

Though I write in Scrivener I keep track of my characters and their relationships in MacFamily Tree, a geneology app. Works wonderfully for me.


I think Scrivener answers your needs almost completly if not to all of them. It has a very good system to understand and keep up with your characters. Furthermore in my opinion, it is a great software to develop and write your stories.


I would recommend giving yWriter a try. yWriter is a full novel writing tool, similar to Scrivener. It allows you to create character summaries and it can track a characters progress through the story, IE what scenes and chapters he appears in. It is also FREE.

  • 1
    I'd love to know more about yWriter, specifically it's functionality in reference to what this user is looking for.
    – Jerenda
    May 2, 2017 at 19:02

Scrivener is the big one that I'd recommend. However, and this is more for screenplays but does have some stuff for comics, novels, and more is Celtx which I used a while ago, but haven't used recently. It had some note taking functionality and character functionality with it and it has a nice price point of being free.


The base templates in Scrivener is horrible. They can be changed to be a bit more suitable, but the template changes are on a per-project basis. I would recommend making a blank project, making all of the changes and additions that you'll find that you want in most of your projects and then saving that as a starting place. You would then obviously "Save As" a different project for each of your projects though.

Honestly, I wish I could have an all-in-one tool that would combine all of the best features of Scrivener, Persona, Word, and believe it or not, Articy Draft.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy