smallfishReview details:
App version:  9.4.1
Device:  iPad 3
Operating system: iOS 9.2


A well crafted and presented app offering unparalled chess strength but a less than fulfilling playing experience for the average user.

SFSmallFish is available for both iPad and iPhone/Pod devices and is developed by Ted Wong who has released several other chess playing apps, including the related SmallChess. SmallFish incorporates the renowned Stockfish chess engine but sets out to improve the standalone Stockfish app with additional features and usability.

It is important to note that SmallFish is a totally free app and does not rely on any advertising or in-app payments; this is very welcome for users and is to the great credit of the developer (as of course the original ‘open source’ Stockfish developers also).

Strength and playability

There is little doubt, if you want to enjoy the feeling of having the strongest dedicated chess app in your pocket or palm, you won’t find better than SmallFish. Why? It’s becuase the app includes the latest official release of Stockfish (7.0) which is currently the strongest mobile chess engine available.

In itself the strongest engine isn’t any real use for practical game play – Stockfish even on a mobile device is more than a match for the best human players. The more important question is how effectively it can be ‘dumbed’ down to provide a reasonable challenge to players of different strengths. This is a notoriously difficult thing to achieve and can often be harder the stronger the engine is to start with.

The good news is that SmallFish has a range of playing levels helpfully split into different SmallFish_eloelo bands with narrative descriptions. These start at beginner (100-500 elo) and progress to World Champion (2700-3300). For example, the user can play against the engine at 1100-1200 elo which equates to the level of a casual player.

However, the bad news is that the elo calibration is fairly inaccurate. The engine tends to play significantly more strongly than the setting selected.  You can see a sample of SmallFish games played against differing opponents here to show this in practice. As an estimate the difference can be up to several hundred elo points. The problem is that inaccurate ratings give users a frustrating and negative experience. It is not good for a 1400 elo player’s ego to regularly be losing to a 1100-1200 opponent! The app as it stands is not suitable for beginners as it plays too strongly and unrealistically for the weaker levels in particular.

Leaving aside the issue of the accuracy of the levels, the other playing related options are pretty good:

  • There is enough variety in the available time controls which include sudden death, fischer and seconds per move levels.
  • Game and individual move analysis is where the strength of the chess engine really comes into play; SmallFish enables the analysis time per move to be preselected with differing levels of detail.
  • For experienced or ‘hard core users’, there are a range of technical options to alter the engine’s playing style and various engine parameters, thoughtfully guidance is provided to explain most if not all available ‘tweaks’.


SmallFish includes all the standard features that might be expected in a high end chess playing app.

Input and output options are generally well catered  – for example in addition to ‘Save’ and ‘Load’ options there is the ability to export games via email and share positions using social media. However, one noticeable gap in this area is the lack of a facility to copy and paste games or positions to the clipboard for use in other apps.

SF online store
A nice touch is the inclusion of an on-line store. Normally these words in an app menu equate to opportunities for securing revenue through the dreaded ‘in-app purchase’ . But here the developer must be congratulated – the store offers the user totally free additional content in the form of downloads of a range of chess game collections, grouped by well known players, tournaments and well-known individual games- a nice touch indeed and one that would be even better with further content.

Practicality of use and presentation

SmallFish is a well designed and produced app and it is clear that the developer has put a lot of thought in to its development. App control is managed simply by four menu headings at the bottom of the screen which are logically described. In  more advanced chess apps menu options can become confusing and over involved. This isn’t the case with SmallFish and the options menu, though having plentiful sub menu headings doesn’t leave the user with a feeling of being ‘lost’ in the app.

There are also simple helpful features to help with general navigation and use. Two examples in particular worth highlighting include:

  • arrow bars in the bottom corners of the screen which are always visible allowing theSF_image user to quickly move back and forth through the individual moves of a game.
  • a graph to visually represent changes in the evaluation or score during the game. This allows the user to quickly pick out any pivotal stages of a game – tapping the evaluation ‘spike’ takes you to the relevant move in the game.

There are enough visual choices available for even the most demanding of users – namely

SmallFish_colour_optionsover 30 piece types and 13 different colour schemes. Yes, there a few of wacky and unusable combinations but more than enough attractive options to maintain interest and variety. A nice feature is that individual choices can be viewed directly from the menu so the user can quickly cycle through selections without leaving the menu.

Notwithstanding the generally positive experience with practical  use, there are a number of small but detailed improvements that could be made – you can find these specific suggestions on the developer page.  One omission that needs to be flagged up is the absence of a screen rotation option; it’s landscape only I’m afraid.

Developer support

If all app developers were as responsive, engaging and communicative as the developer of Smallfish, users would have little to complain about! User support is a strong point; the app has detailed guidance integrated within it and this includes some of the more technical aspects of the engine.

The developer positively encourages feedback and is happy to engage with users to make further improvements. A welcome but seemingly still relatively unusual option for app developers, is the use of active twitter account (@SCChess) to provide an addiitonal means of contacting and engaging with the developer. SmallFish has remained in active development over several years with regular updates (another is due shortly!). There is no suggestion this is likely to change in the short term so users have plenty to look forward to!



  • Free and ad-free (including online store material)
  • Top strength engine
  • Clean and effective design and layout
  • Variety of board/piece skins
  • Developer support


  • Inaccurate rating calibration
  • Inability to copy and paste games/positions via clipboard
  • No screen rotation


These are my thoughts; if you have used this app what do you think…..


What makes a ‘keep-me’ chess app?

There are literally hundreds of chess apps for both android and apple platforms, far too many to keep and use regularly on your chosen device. So what separates the ‘keep-me’ chess app from the ‘delete-me’?

For my first non-app specific review, I’ve been thinking about the things that I look for in a chess app. To set my views in context, I’ll start by saying I’m a longstanding and enthusiastic chess player, who has never been as good as he thought should be, and who has to face the crushing reality that he will really only ever be a woodpusher of average strength (1200-1400 elo) – does this sound familiar!?

First things first – If I’m downloading a chess app I just want to play a fun game of chess as easily as possible with a challenging and realistic opponent. With this in mind my thoughts primarily relate to apps that play chess rather than some other chess aspect, such as database managment or chess problems.

So what do I want?

Realistic and well matched opponent

I enjoy playing chess – it’s why I want a chess app! I’m not the strongest player so don’t need or want an engine that is going to humilate me at every opportunity. Generally it is much harder to ‘dumb’ down a really strong engine than to use a ‘weaker’ engine; so the app doesn’t need to have the strongest available engine. If I want to analyse a game or position I will use a dedicated app for this such as Analyze this! or a recognised top strength chess engine. The engine needs to play realistically for my level of strength with an engaging style of play – I don’t want an opponent who plays like a GM for a period and then suddenly blunders a piece away or makes totally inexplicable or unexpected moves. Similarly, I certainly do want the engine to use an opening book but it needs to be appropriate to the level I’m playing at – a chess novice or beginner is unlikely to have an in-depth book knowledge!  Apps that score well in the playability area include ChessAI and Chess Genius.

Good range of chess ‘skins’….

Just like the next person I like a bit of variety to avoid getting bored. So in my chess apps I like to see a few different chess piece sets – nothing fancy, the usual favourites will do Merida, Alpha or Leipzig for example. The same applies to chessboard colours and styles – it doesn’t take many of of each these options to give the user a really good selection to suit their particular taste on any given day. Even better are the apps that have thoughtfully pre-selected a set of well matched skins for me to choose from.

…. but no gimmicks!

I’m not a young kid! – I don’t want overly brightly coloured boards which distract me from my game. Nor do I want pieces which are so fancy or poorly designed you can’t tell which piece is which! I don’t want a 3d board (and certainly not on a phone) unless it is designed exceptionally well and clearly (which is very hard). Spark Chess, tchess Pro (iOS) and perhaps the emerging Napo Chess come to mind as notable exceptions.

Big Board option 

For use on a phone particularly, the combination of ‘fat fingeritis’ and poor eyesight makes the option to vary (and increase) the size of the chess board a ‘must’ have feature. Developers need to make the visual aspects as clear and easy to use for the user as possible. A full (or near full) screen chessboard also allows the user the ability to just play a game without the clutter or distraction of analysis, game moves etc.

Simple interface and menu structure

This doesn’t mean the app needs to have a limited number of features, but some thought behind how the user is going to navigate around the app is essential. As I get older, I can’t be bothered to dive around to find features and functions that don’t sit logically together. I also don’t want to spend time ‘re-learning’ where everything is if I’ve not used the app for a while. A sophisticated and well-featured app doesn’t mean it can’t be well designed and easy to use. Some good examples of apps that get this right include tchess Pro , Chess Genius and Deep Green Chess (iOS).

A well supported app with an active developer

I suspect chess apps have the potential to attract a more passionate following than perhaps most other types of app. Developers shouldn’t underestimate the importance of looking after their users or take them for granted. I can forgive and tolerate pretty much the worst of bugs if a developer is pro-active in wanting to receive and respond to feedback to improve their app. Developers that don’t acknowledge or welcome user views, show no interest in correcting obvious weaknesses or progressing ‘unfinished’ apps will get me hitting ‘delete’. After all, if the developer isn’t bothered about their app then why should I be?

Of course it’s not just about correcting bugs. Simple things like clear and easy to understand instructions and readily available contact details give users a strong flavour of a developer’s approach to customer care.  I’ve found that many chess app developers are actually pretty good in supporting their users. Some recent examples that come to mind include the developers of SmallChess (iOS) and Napo Chess.


For this user, an app needs to be well designed, simple to use and fun to play. This doesn’t mean it has to be a basic or limited in features in any way. However, focusing on extending the range of features to the detriment of usability is likely to result in the declining use of an app.


These are my thoughts; what do you think is important in a chess app? …..