diff --git a/components/chart/chart.js b/components/chart/chart.js
index b4b4453fb455849cf2a229ed49a19cd228f74259..e5366c9f385a6bc552c1cfaa3cfe223d44fb4327 100644
--- a/components/chart/chart.js
+++ b/components/chart/chart.js
@@ -196,9 +196,11 @@ export default class CycleChart extends Component {
             renderItem={this.renderColumn}
             keyExtractor={item => item}
             initialNumToRender={15}
-            maxToRenderPerBatch={5}
             windowSize={30}
             onLayout={() => this.setState({chartLoaded: true})}
+            onEndReached={() => this.setState({end: true})}
+            ListFooterComponent={<LoadingMoreView end={this.state.end}/>}
+            updateCellsBatchingPeriod={800}
           />
         }
       </View>
@@ -206,6 +208,16 @@ export default class CycleChart extends Component {
   }
 }
 
+function LoadingMoreView(props) {
+  return (
+    <View style={styles.loadingMore}>
+      {!props.end &&
+        <AppText>{labels.loadingMore}</AppText>
+      }
+    </View>
+  )
+}
+
 function getTodayAndPreviousDays(n) {
   const today = new Date()
   today.setHours(0)
diff --git a/components/chart/styles.js b/components/chart/styles.js
index 8cc044fbd854b4021743923511acf6ed42f1f0c4..3b883d8de3358a783be0af21c8f55173863dcdaf 100644
--- a/components/chart/styles.js
+++ b/components/chart/styles.js
@@ -122,6 +122,11 @@ const styles = {
   symptomRow: {
     alignItems: 'center',
     justifyContent: 'center',
+  },
+  loadingMore: {
+    height: '100%',
+    backgroundColor: 'lightgrey',
+    justifyContent: 'center'
   }
 }
 
diff --git a/components/labels.js b/components/labels.js
index 6a9709c647b469c12795a5b3bd5b7efe712807c5..adb6700646bb934bedf4f4b58f9a50aa11ba72f2 100644
--- a/components/labels.js
+++ b/components/labels.js
@@ -12,6 +12,7 @@ export const shared = {
   date: 'Date',
   cycleDayWithLinebreak: 'Cycle\nday',
   loading: 'Loading ...',
+  loadingMore: 'Loading more ...',
   more: 'more',
   less: 'less'
 }