Today's mobile devices offer multiple network connectivity options with orders of magnitude differences in cost, power, speed and reliability. Given this high variability, dynamic optimization of radio connectivity choice is promising. To increase the flexibility and payoff of such optimizations, we recognize that many applications have significant delay tolerance, which we exploit to schedule data transmissions. This paper proposes and evaluates techniques for cost-optimizing connectivity choice based on application delay tolerance, as well as on predictions of upcoming data usage and connectivity availability. We explore optimal (MILP-based) and heuristic approaches for optimizing this choice while abiding by application performance requirements. Our work studies how errors in predicting data usage or network connectivity impact each approach's success at cost reduction. We evaluate the technique through both simulation and a prototype on an Android smartphone. Overall, our technique averages more than 2× reduction in cellular data usage, and for some scenarios, the reduction is as high as 5×. In addition, the Android prototype also demonstrates the importance of accounting for radio switching overhead and TCP flow migration time.