The longevity of any artificial haircolor depends entirely upon the porosity of the hair. With that in mind, a temporary haircolor (like a spray or stick) can prove to last a very long time if applied to hair that is very porous (possibly due to excessive lightening, heat or iron damage, or environmental damage, such as sun lightening).
Specifically regarding the information you have given, I can assume that your permanent color is not lasting for you for a number of reasons. First, because you said you are coloring to a warmer brown and it is fading to a blonde, my question is if you were a blonde color to begin with at the start of your last service? If the answer is yes, it is very likely that your hair was in need of an additional step in the coloring process, where the lacking primary colors were put back into your hair to provide a solid canvas to then create a chestnut brown. We call this filling or repigmentization.
If that wasn't the case, it very well could be the result of an inaccurate formulation. A professional colorist will create a special formula for each guest based on their hair analysis, the clients hair & health history, the desire of the client and the product available. Sharing the history of your prior hair services is very important for an accurate chemical formulation!
Lastly, it may be that you let too much time go in between visits. Choosing a permanent color does not mean that the color will last forever, like a tattoo! Hair is much like a fabric in the same way that frequent wash & wear causes fading! Using the professionally recommended products and visiting the salon in the recommended time for maintenance is critical to having a great color look it's best all the time!
Have a great hair day!