This question is not a simple one, so you may not expect a simple question. If you read about this blog post, Uncle Bob Martin is a big fan of TDD, even for startup. I would say, for any startups, or any company, the technology process has to be aligned with the business process, which means it has to satisfy both the short term and long term goal of the business.
Think of any business you know, think of their products. If you serve a bigger, long term goal, the team will be given more money and time, otherwise, it will be given much less. If their products are the main cash cow, it is the long term product, otherwise, if it only built to last a couple of weeks and months, it is not.
So, startup, even though not a mature business, still needs to deal with this problem on a daily basic. I think the best approach for any startup is to determine how long the project would need and reconsider their decisions every few months to make sure they are still on track. When the startup thinks that the product is going to last long or the number , they need to add more tests into it, to refactor the source code, to raise the source code requirement. In economics, it is an important concept that “in the long term, everybody dies”. So, who cares about long term if we are going to die tomorrow? But, if we live for 10 years without a plan, I am sure that you will die within the next few weeks. The matter is how long you think your product will live.
And of course, if you keep the same plan, or the same process for the startup when the product grows, you sure gonna die. That’s the job of the executives to keep teams aligned with the business goals. And any company cannot do this will not survive for long.