$('.btn').on('click', function() {
$(this).remove();
//загрузили новые товары в список
$('ul').append('<button class="btn btn-default gridcount">Загрузить еще</button>')
});
<ul>
<li class="product"></li>
<li class="product"></li>
<li class="product"></li>
<li class="product"></li>
<li class="product"></li>
<li class="product"></li>
</ul>
$('ul').append('<button class="btn btn-default gridcount">Загрузить еще</button>')
$('.btn.btn-default.gridcount').remove();
$('.product:nth-child(6n)').append('<button class="btn btn-default gridcount">Загрузить еще</button>')
привязывать не к nth-child(6), а к последнему отображаемому элементу или вообще лучше к родителю этого списка