diff --git a/src/app/views/crud/crud.html b/src/app/views/crud/crud.html
index adeaaa4..b347c31 100644
--- a/src/app/views/crud/crud.html
+++ b/src/app/views/crud/crud.html
@@ -22,16 +22,17 @@
             <div class="pull-right text-right" style="line-height: 14px">
                 <!--<small>UI Elements<br>General<br> <span class="c-white">Grid system</span></small>-->
                 <a class="btn btn-default" ng-if="vm.list" href="{{vm.baseUrl}}add">Add</a>
-                <a class="btn btn-default" ng-if="!vm.list" href="{{vm.baseUrl}}">Back to {{vm.title.toLowerCase()}} list</a>
+                <a class="btn btn-default" ng-if="!vm.list" href="{{vm.baseUrl}}">Back to {{vm.pluralTitle.toLowerCase()}} list</a>
             </div>
             <div class="header-icon">
                 <i class="pe page-header-icon pe-7s-note2"></i>
             </div>
             <div class="header-title">
-                <h3>{{vm.title}}</h3>
-                <!--<small>-->
-                    <!--Responsive, mobile first fluid grid system.-->
-                <!--</small>-->
+                <h3 ng-if="vm.list">{{vm.pluralTitle}}</h3>
+                <h3 ng-if="!vm.list">{{vm.singularTitle}}</h3>
+                <small>
+                    {{vm.modelDef.description}}
+                </small>
             </div>
         </div>
         <hr>
diff --git a/src/app/views/crud/crud.ts b/src/app/views/crud/crud.ts
index 325790f..bcac6a9 100644
--- a/src/app/views/crud/crud.ts
+++ b/src/app/views/crud/crud.ts
@@ -22,7 +22,7 @@
 import * as _ from 'lodash';
 import {IXosResourceService} from '../../datasources/rest/model.rest';
 import {IStoreHelpersService} from '../../datasources/helpers/store.helpers';
-import {IXosModelDiscovererService} from '../../datasources/helpers/model-discoverer.service';
+import {IXosModelDiscovererService, IXosModel} from '../../datasources/helpers/model-discoverer.service';
 import './crud.scss';
 import {IXosCrudRelationService} from './crud.relations.service';
 import {IXosDebugService, IXosDebugStatus} from '../../core/debug/debug.service';
@@ -57,9 +57,12 @@
   public formCfg: any;
   public baseUrl: string;
   public list: boolean;
-  public title: string;
+  public modelName: string;
+  public pluralTitle: string;
+  public singularTitle: string;
   public tableData: any[];
-  public model: any;
+  public model: any; // holds the real model
+  public modelDef: IXosModel;
   public related: {manytoone: IXosModelRelation[], onetomany: IXosModelRelation[]} = {
     manytoone: [],
     onetomany: []
@@ -87,16 +90,18 @@
     this.$log.info('[XosCrud] Setup', $state.current.data);
 
     this.data = this.$state.current.data;
-    this.model = this.XosModelDiscovererService.get(this.data.model);
-    this.title = this.ConfigHelpers.pluralize(this.data.model);
+    this.modelDef = this.XosModelDiscovererService.get(this.data.model);
+    this.modelName = this.modelDef.verbose_name ? this.modelDef.verbose_name : this.modelDef.name;
+    this.pluralTitle = this.ConfigHelpers.pluralize(this.modelName);
+    this.singularTitle = this.ConfigHelpers.pluralize(this.modelName, 1);
 
     this.list = true;
 
     // TODO get the proper URL from model discoverer
-    this.baseUrl = '#/' + this.model.clientUrl.replace(':id?', '');
+    this.baseUrl = '#/' + this.modelDef.clientUrl.replace(':id?', '');
 
-    this.tableCfg = this.model.tableCfg;
-    this.formCfg = this.model.formCfg;
+    this.tableCfg = this.modelDef.tableCfg;
+    this.formCfg = this.modelDef.formCfg;
 
     this.debugTab = this.XosDebug.status.modelsTab;
     this.$scope.$on('xos.debug.status', (e, status: IXosDebugStatus) => {
@@ -109,7 +114,6 @@
         (event) => {
           // NOTE Observable mess with $digest cycles, we need to schedule the expression later
           $scope.$evalAsync(() => {
-            this.title = this.ConfigHelpers.pluralize(this.data.model, event.length);
             this.tableData = event;
 
             // if it is a detail page for an existing model
