diff --git a/app/components/modules/Header.jsx b/app/components/modules/Header.jsx
index bbf2a30c6d4c080d6cbc35311183ca278056a9c9..03dc5cebb6a114f090fb44ab39905c8d0ffbdfab 100644
--- a/app/components/modules/Header.jsx
+++ b/app/components/modules/Header.jsx
@@ -17,7 +17,9 @@ function sortOrderToLink(so, topic, account) {
 class Header extends React.Component {
     static propTypes = {
         location: React.PropTypes.object.isRequired,
-        current_account_name: React.PropTypes.string
+        current_account_name: React.PropTypes.string,
+        chain_participation: React.PropTypes.number,
+        chain_time: React.PropTypes.string
     };
 
     constructor() {
@@ -182,6 +184,13 @@ class Header extends React.Component {
             ];
             sort_order_extra_menu = <HorizontalMenu items={items} />
         }
+
+        let warning;
+        const participation_rate = Math.round(100.0 * this.props.chain_participation / 128.0, 2)
+        const head_block_age = (((new Date()) - (new Date(this.props.chain_time))) / 1000)
+        warning = "Participation: " + participation_rate + "% -- head block age: " + head_block_age + "s"
+
+
         return (
             <header className="Header noPrint">
                 <div className="Header__top header">
@@ -207,6 +216,7 @@ class Header extends React.Component {
                         </div>
                     </div>
                 </div>
+                {warning && <div className="Header__chain-state-warning">{warning}</div>}
                 <div className={'Header__sub-nav expanded show-for-medium row' + (this.state.subheader_hidden ? ' hidden' : '')}>
                     <div className="columns">
                         <HorizontalMenu items={sort_order_menu_horizontal} />
@@ -226,9 +236,12 @@ export default connect(
     state => {
         const current_user = state.user.get('current');
         const current_account_name = current_user ? current_user.get('username') : state.offchain.get('account');
+        const {participation_count, time} = state.global.get('props').toJS()
         return {
             location: state.app.get('location'),
-            current_account_name
+            current_account_name,
+            chain_participation: participation_count,
+            chain_time: time
         }
     }
 )(Header);
diff --git a/app/redux/PollDataSaga.js b/app/redux/PollDataSaga.js
index c7c587539d20f38887f2423fb7a260fc94e05ebe..78d3983a06ac019f8004f78af2e5b837aba0d8c5 100644
--- a/app/redux/PollDataSaga.js
+++ b/app/redux/PollDataSaga.js
@@ -29,6 +29,7 @@ function* pollData() {
                 // console.log('-- pollData.pollData -->', data);
                 // const data = yield call([db_api, db_api.exec], 'get_discussions_by_created', [{limit: 10}]);
                 // yield put(GlobalReducer.actions.receiveRecentPosts({data}));
+                yield put(GlobalReducer.actions.update({key: ['props'], updater: (m) => m.merge(data)}));
             } catch (error) {
                 console.error('~~ pollData saga error ~~>', error);
             }