Using publicly available market data we construct a three-component order flow imbalance vector that represents executions against displayed quotes, executions against dark liquidity and the net imbalance in the flow of limit orders. The main contribution of this paper is empirical evidence of how these different components of order flow affect returns. We find that market-order executions against hidden liquidity have the smallest impact on stock returns. In contrast, market executions against displayed liquidity provide the highest pressure on market returns, followed by the price impact from the net limit order flow. Drawing from these results, we define a scalar imbalance that correlates to stock returns more closely than the traditional Lee-Ready imbalance. We also provide empirical evidence that price impact is a nonlinear concave function of the scalar imbalance.