csvsimple vs. conditional row coloring

Your error stems from \rowcolornot being at the very beginning of the row. You can fix that by adding an additional \\ at the beginning of a row. It would also be better to use a filter (section 3.4 of the manual) to process conditionals:

\documentclass[12pt]{article}
\usepackage{csvsimple}
\usepackage[table]{xcolor}

\usepackage{filecontents}
\begin{filecontents*}{\jobname.csv}
a,b,c,d
1,1,2,2
1,3,2,1
3,4,5,0
6,7,8,1
8,6,4,2
9,1,2,4
0,0,1,1
\end{filecontents*}


\begin{document}
\begin{tabular}{*{4}{c}}
\csvreader[head to column names,
           full filter=\ifnumgreater{\d}{1}
                       {\\\rowcolor{gray} \csvfilteraccept}
                       {\\                \csvfilteraccept}
           ]{\jobname.csv}{}{\csvlinetotablerow}%
\end{tabular}
\end{document}

enter image description here