The size of the sub box depends on the subs you put into it. Each sub has a specific amount of air space inside the box that it needs to function properly. It also depends on what kind of box that you want. Sealed box will give you nice tight bass, where as a ported or bandpass box will give you more boomy bass. Sealed boxes tend to be smaller in size, so this may be the way you want to go.
To calculate the air space inside the box---Height x Width x Depth divided by 1728 = Cubic feet of air space inside the box. Example 12 x 12 x 12 = 1728---1728 divided by 1728 = 1 cu/ft
Any subs that you buy should come with a manual that will tell you the recomended air space for each sub. If you want a ported box (more boomy bass) many manuals will tell you the size of the port needed in the box for the amount of air space you have. You can also call the manufacturer, or look it up online.
If you are going to build the box yourself, use MDF, medium density fiberboard. You can get it at Home Depot or a place like it. Use good wood glue, screws, and silicone, and your good to go. Good luck.