The Google trends shows well that that "fullstack developer" trend has evolved over some time, now it has slowed down a little bit.
Why would you hire a full stack developer?
Project Management Stack Exchange is a question and answer site for project managers. It only takes a minute to sign up.Sign up to join this community
The short answer to the question "What is the Economic decision to have a fullstack developer?" is this: A more flexible team is able to have have better flow-through of valuable work and therefor creates for value per day/week/sprint than a less flexible team. A fullstack developer is more flexible than a specialist and therefor makes his team more flexible.
To give an example, let's say we have an application that has a web interface and a mobile interface with a set of web services and some back-end interface to a database and another interface to a vendor's API. I have two teams. One is a group of specialists - 1 mobile dev, 1 web service dev, 1 back-end dev, and one DBA. The other team, each of the 4 team members has 3 of the 4 skills.
Sprint 1 we take on a feature that requires an even distribution of skills and both teams complete the work just fine.
Now in Sprint 2, our vendor gives us this new feature and implementing it this sprint would be huge for that tech show we're featuring our project at in 3 weeks. Implementing it is just a button on each interface and a passthrough action trigger, so it's almost no work in most areas, but the vendor API is a giant mess and it's way more than one person can get done in a sprint. Team 1 is toast. They only have one person who can do that work, so the other members will have to keep busy with less-valuable work that is in their skillset and they miss the tech show. Team 2, on the other hand, has more flexibility in their skills, so while one team member takes care of the interfaces and web services, the rest swarm on the vendor API and are able to complete it in the sprint.
Those are fairly extreme examples to illustrate the point. There isn't one "right" way to build your team. The team should be modified and crafted to fit the type of work they field. However, in general, more flexibility results in higher value generated.
The exception that proves the rule:
The flexibility comes at a cost - in mastery. Someone who specializes on one thing can become much more proficient at it than someone who broadens their skills. I like to use 5 levels of mastery when discussing this subject:
1 - Beginner: basic skills you can learn from youtube
2 - Practiced: can tackle most normal tasks in this skill
3 - Professional: can tackle tasks that people who don't do this for a living can't
4 - Expert: this person tackles the kinds of problems that need deep experience and analytical skills.
5 - Industry leader: This person literally sets the industry standard and solves problems no one in the industry has ever tried before.
Now think about the work you do, where do the tasks fall? If you work for a company like Tesla's R&D many of your tasks are 4's and 5's. If you are working for a digital marketing agency, your development work probably never tops a 3. If you are doing cutting edge development work, then there is financial benefit to having a few teams of specialists. But they are the exception that proves the rule.