There's a lot of that, to be sure, but I think its also the fact that you can buy a iPhone 7 for less money from Apple, and the 8 doesn't really give you anything more.
I think the 8 would have been a fine 7s model which would have been the expectation this year.
The iPhone X is really next years model which would have been 8.