One of the most important reason is that Forth is said to be an amplifier. I haven't believed this for quite a long time. The sad thing to say is that this was all relative. Those which were average programmers hadn't coded anything in Forth, and therefore hadn't a label. The Forth approach of layered programming is inherently difficult to grasp.
People tend to think linear, and on the same logical level.
You don't get anything done with a linear approach, since you won't have the tools you are used to. There aren't much libaries in Forth, as Forthers like it more to reinvent the wheel instead of designing one and make this one reusable. Special purpose wheels tend to be written much faster, use lesser resources, and fit to the applications. So IMHO Forth is an elitary language, designed and written for the best, or gifted, not for the masses. It should be noted that the layered approach of writing programs is acknowledged elsewhere, too.