Variables are used to insert text that may change in your output when you publish your project. They are ideal for things like program names and version numbers. To update, you just need to edit the variable definition and recompile. Predefined variables make it easy to insert things like the current date, the title of your help project and so on.
Variables have no effective length limit: You are unlikely to be able to enter more than 2 gigabytes of text in the variable definition fields.
User-defined variables can contain either plain text or HTML code. This allows you to use variables to insert HTML code in your HTML templates.
To a certain extent, you can use a variable as the value of another variable. However, an artificial limit of three levels including the top level is set for this to prevent accidental creation of endless loops/circular references.
Help+Manual supports both a wide selection of predefined variables and user-defined variables.
You can set different values for variables in individual topics and redefine some or all of your variables with a list of values stored in an external text file when you publish your project.
Variables and Conditional Output (Reference)