A popular approach to indicate switching to and from Insert mode is toggling the cursorline option, which is responsible for whether the current screen line is highlighted (see :help cursorline):
:autocmd InsertEnter * set cursorline
:autocmd InsertLeave * set nocursorline
or, alternatively:
:autocmd InsertEnter,InsertLeave * set cul!
Modify the CursorLine highlighting group to change the styling of the cursor line to your liking (see :help :highlight and :help highlight-groups).
This approach assumes, of course, that you do not use the cursor line highlighting in Normal mode.
Check my vimrc to see how setup the cursor hightlighting
The specific part is this:
"----------------CURSORLINE------------------------------------------------"
set cursorline
hi cursorline cterm=none term=none
hi cursorlinenr cterm=none term=none
autocmd WinEnter * setlocal cursorline
autocmd WinLeave * setlocal nocursorline
highlight CursorLine guibg=#303000 ctermbg=234
highlight CursorLineNr guibg=#303000 ctermbg=234 ctermfg=green
you have to execute this code after your load a colorscheme otherwais it con be overwrite.
Ciao