Flow theory suggests three flow conditions lead to flow. Previous research has only confirmed the link between optimal challenges and flow with controlled experiments. Inspired by the TOTE units (Miller et al., 1960), an Activity Flow is introduced to model cognitive processes in computer-based tasks. Based on Activity Flow and flow theory (Nakamura & Csikszentmihalyi, 2002), a Design for Flow model is proposed to illustrate how design artifacts impact on flow conditions and flow. A controlled experiment was conducted to validate the causal relationship between design artifacts and flow. Results confirmed that the congruence between tasks and system feedback has significant effects on flow conditions and leads to flow. This study advances our knowledge by showing how task and interface design may contribute to flow. It has significant theoretical and practical implications to flow research.