In mac, I mainly use three free tools for converting, scaling and optimizing images.

XnConvert

XnConvert is a fantastic free tool for resizing, manipulating and converting images in batches (it is also integrated inside XnViewMP, if you want a image viewer for the mac too)

In addition to resizing and converting among formats (png or jpg) allows to apply several transformations and filters in the process.

ImageOptim

ImageOptim is a pretty simple to use and really effective image optimizer. It mainly works losslessly but can be configured to be slightly lossy for even better results. Internally it uses some CLI tools like PNGOUT, AdvPNG, extended OptiPNG, PngCrush, JpegOptim, jpegtran, jpegrescan & Gifsicle.

It produces partial results and the interface is super simple and clean.

Waifu2x

Waifu2x is an algorithm used for upscaling images using neural networks. It works better with anime-style images or even vectorial images, like text and screenshots. It works much better than real-time algorithms.

In my case I use the cli version for mac. And in the case it fails (in some cases for small images), I fallback to the service or open a parallels with Windows to convert it from the CPU.

In addition to that, I have a small script I use called "2x" (using waifu2x cli for mac) that requires one single argument with the image and generates a .2x.png image from it without asking anything else:

/usr/local/bin/2x
chdmod +x /usr/local/bin/2x

#!/bin/bash

FILE=$1
NAME=`echo "$FILE" | cut -d'.' -f1`

if [[ $FILE == '' ]]; then
    echo "2x image.png"
    exit
fi

waifu2x -n 0 -s 2 -i $FILE -o $NAME.2x.png