If I understand correctly, it is called pagination, and yes.
Here is how I just figured it out recently. It is important to note the position of the “if count == 1” and the “if count == total_results” That is the key to making this work within the data loop.
{exp:channel:entries channel="news" limit="3" paginate="bottom"}
{if count == "1"}<div class="grid-x grid-padding-x small-up-1 medium-up-2 large-up-4 text-center">{/if}
<div class="cell">
<div class="cellblock text-center medium-text-left">
<a href="http://{url_title_path=news/article}">{news_image}{img:url}{/news_image}</a>
<h4><a href="http://{url_title_path=news/article}">{exp:chopper words="5" append="..."}{title}{/exp:chopper}</a></h4>
{news_teaser}
<a href="http://{url_title_path=news/article}"><i class="fa fa-caret-right"></i> Read More...</a>
</div>
</div>
{if count == total_results} </div> {/if}
<!-- the below is what creates the pagination numbers -->
{paginate}
Page {current_page} of {total_pages} pages {pagination_links}
{/paginate}
{/exp:channel:entries}
Here is the docs. https://docs.expressionengine.com/latest/templates/pagination.html
Packet Tide owns and develops ExpressionEngine. © Packet Tide, All Rights Reserved.