Based on recent interviews with Kevin Feige (president of Marvel Studios) and Joe Russo (one of the Infinity Wars directors), it seems safe to assume that the 8 year date was incorrect.
Russo, in an interview with Ashish Chanchlani, described the time gap between Avengers and Homecoming as:
“It was eight years, I believe,” Russo responded. “It was a very incorrect eight years.”
Feige, in an interview with Cinemablend, explains that Marvel is building their timeline based around the central event that changed their world:
We're doing that, and the origin point for us is Tony saying, 'I am Iron Man.' So everything will be years after that, years before that
With those two things put together, the most likely explanation is that Spider-Man: Homecoming takes place 8 years "AIM" - After the "I am Iron Man" moment - which would place the movie in roughly late 2016 or early 2017, where it makes sense.
Maybe, we just don't know. I've gone into painful detail in this answer but, to summarize the problem, there are two options:
- The entire Phase One of the MCU (Iron Man, Iron Man 2, Thor, The Incredible Hulk, and Avengers) all take place within about 18 months.
- When Spider-Man: Homecoming claims it's happening 8 years after the Battle of New York, it's just wrong
What The Movie Says
The movie itself gives a few clues to when it takes place, all pointing to September of 2017. These clues include:
- The Decathalon takes place on Sept. 14, over a "long weekend". Based on the real-world Decathalon, Sept. 14, 2017 or Sept. 14, 2018 would probably work.
- The AI in Peter's suit tells us that a criminal born April 1984 is currently 33.
- According to reports from people on the set, there were ads on the Staten Island Ferry touting the upcoming "Stark Expo 2018".
All of these would seem to put Homecoming in 2017. If, as we originally thought, Avengers took place in 2012, that would clearly make no sense.
The One Year Option
Option one is that all of Phase One took place between November 2008 and March 2010. The basic reason can figure this out is because we can place two of the Phase Three movies relative to two of the Phase One movies, and place several of the Phase One movies relative to each other. Specifically:
- We know that Captain America: Civil War happens 8 years after Iron Man.
- We know that Spider-Man: Homecoming happens 8 years after Avengers.
- We know that Spider-Man: Homecoming happens two months after the airport scene in Captain America: Civil War.
- We know that Iron Man 2 happens 6 months after Iron Man, and also happens on Tony's birthday (which is in May).
- We know that Avengers takes place about a year after Iron Man 2/The Incredible Hulk/Thor.
If we allow "8 years" to mean anywhere from 7-9 years, with some conveniently chosen rounding, then we can pin down Iron Man 2 to May 2009 and move everything else around it. That puts Homecoming in 2017, where the movie claims to be in the first place.
Why This Is Terrible
For starters, until now, most of the MCU movies have all been set in the year they were released, and everything in the movies appears to support that. (The exceptions are Thor and The Incredible Hulk, which take place at the same time as Iron Man 2, and Guardians of the Galaxy 2, which happens in 2014.) In fact, the producers of Homecoming gave an interview where they implied they set Homecoming earlier than it's release date, to tie into Civil War:
There will be some awkward chronology in that the movie comes out almost two years after Civil War, but we’re playing it like it’s a few months after Civil War.
One reason we've always assumed this is because it make sense give how much happened between movies. The characters seem to evolve, and the world seems to recover, at about the pace you'd expect from the gap between release dates.
Also, if you go outside the movies themselves, and include the supplemental / promotional materials, we can restrict our timeline even more. In particular, we can pin down Iron Man 2 as happening in 2010, meaning the Avengers couldn't take place any earlier than 2011. That makes 2017 a huge stretch to be called "8 years later".
Or They Goofed
So, for most people, the more sane conclusion is that Sony/Marvel just goofed. They somehow got the timeline wrong when they decided it had been 8 years since Avengers, when it really should have been 4.