You wrote,
As I understand it, a counter is supposed to increment automatically.
That's not correct. If you create a counter but never do anything to or with it except display its value (say, via \themcounter), the counter's value will remain at its initial value (generally, 0) throughout the document.
In LaTeX, a counter's value can be modified with the commands \setcounter, \addtocounter, \stepcounter, and \refstepcounter. \setcounter and \addtocounter take two arguments: the name of the counter and a whole number. \stepcounter and \refstepcounter increment the counter's value by 1, and they take just one argument -- the name of the counter whose value is to be incremented.
If you want to create a LaTeX macro which (a) increments the counter named mycounter by 1 and (b) displays the newly-incremented value of mycounter, you can do so in several ways. E.g., after creating the counter with
\newcounter{mycounter}
you could use one of the following three definitions of \showmycounter:
\newcommand\showmycounter{\addtocounter{mycounter}{1}\themycounter}
\newcommand\showmycounter{\stepcounter{mycounter}\themycounter}
\newcommand\showmycounter{\refstepcounter{mycounter}\themycounter}
By default, the directives \themycounter and \arabic{mycounter} produce the same output, i.e., arabic numerals are used by default to show the value of a counter. If you wanted to show the counter's value as, say, an uppercase-Roman numeral, you'd either have to redefine \themycounter (via \renewcommand\themycounter{\Roman{mycounter}}) or change the above \newcommand instructions, e.g.,
\newcommand\showmycounter{\stepcounter{mycounter}\Roman{mycounter}}
The value of a counter can be any whole number, including 0 and negative whole numbers. Unsurprisingly, if the value of mycounter is non-positive, an attempt to represent its value as an alphabetic character or as a Roman numeral will generate an error message.
An MWE (minimum working example) that builds on these ideas:

\documentclass{article}
\newcounter{mycounter} % create a new counter, called 'mycounter'
% default def'n of '\themycounter' is '\arabic{mycounter}'
%% command to increment 'mycounter' by 1 and to display its value:
\newcommand\showmycounter{\stepcounter{mycounter}\themycounter}
\usepackage{lipsum}
\newcommand\showlips{\stepcounter{mycounter}\lipsum[\value{mycounter}]}
\begin{document}
\showmycounter, \showmycounter, \showmycounter
\showlips
% verifying that the preceding command used '4':
\lipsum[4]
\end{document}
\stepcounter(or\refstepcounterif you want to use the\label\refmechanism) – leandriis Aug 10 '19 at 13:36enumerateenvironment instead of using a self defined counter. – leandriis Aug 10 '19 at 13:37\stepcounter{mcounter}for a simple increment by 1 unit.\refstepcounter{mcounter}if you want the next\label{name-of-label}command to use this counter value (i.e., store it in the.auxfile associated to the labelname-of-labelso that it can be retrieved with\ref{name-of-label}, and the corresponding page number with\pageref{name-of-label}). – frougon Aug 10 '19 at 14:06\newcommand{\nextvalue}[1]{\refstepcounter{#1}\csname the#1\endcsname}Then every call of\nextvalue{mcounter}will print the next value... If you dont want it with an argument ... just\newcommand{\nextvalue}{\refstepcounter{mcounter}\themcounter}would be enough. – koleygr Aug 10 '19 at 14:25