Marktrita
A shelf-sorting game for my girlfriend and me, stocked with the groceries we actually buy.
- Platform
- iPhone
- Stack
- Swift, SwiftUI, SpriteKit, Nano Banana
- Status
- Personal

01Problem
We got a little addicted to Goods Sort, and the ads drove us crazy.
My girlfriend and I like to play Goods Sort together. But the amount of ads you have to watch, and how it pushes you to spend money, made us super angry - it’s a big waste of our time on this earth. So I thought I could build our own Goods Sort, without ads, that we like even more.
02Idea
Goods Sort, but with our own groceries.
You drag products between shelves, three of the same clear, and the row behind slides forward. I stocked it with the 29 things my girlfriend and I actually buy, from Skyr to Coke Zero, and set it in a German discounter.

Start 
Sort 
Win
03Features
Every product is drawn by Nano Banana, like in Trim.
The first set was cartoons, and some of them I couldn’t really recognise. So I switched to realistic studio renders, which you can tell apart at a glance on a busy shelf. Between the groceries there are a few things we love that you can’t buy, like a corgi and a Skanderbeg statue.

03Features
The shelves keep changing, so the levels don’t feel the same.
A Kassenband carries products along the top row. A freezer only thaws once you clear enough triples elsewhere. Sealed cartons hide what’s coming next, and products with a security tag won’t move.

Kassenband 
Freezer 
Cartons 
Security tag
03Features
Win a few in a row and you’re on fire.
Quick clears set you on fire for extra time. Win three levels in a row and the next one starts with a few more seconds. Longer runs fill up your Vorrat - a Scanner at five, a Räumungsverkauf at ten, and after that a surprise every four wins. The power-up comes out of a little gift box on the win screen, which is way more fun than it should be. Lose one and the streak goes with it, which honestly stings a little.

03Features
Pfand is scarce now, so the two power-ups feel like a big deal.
In the beginning we just bought power-ups all the time, so they didn’t mean anything. Now a Scanner costs about two levels of Pfand, and the big one closer to eight. I also threw out Zurück and Mischen, since you can put a product back by hand and shuffling never really helped. The Scanner beeps onto three of a kind and they zip into the till. The Räumungsverkauf is the nuke - the whole screen turns into a sale with ALLES MUSS RAUS! and four triples fly off the shelves. When you lose, the one that would have saved you is right there on the loss screen.

Scanner 
Räumungsverkauf 
Sackgasse
04How it works
250 levels, and a bot plays every one before we do.
The first version looked fine, but level 3 couldn’t be won, and almost everything after level 17 was a dead end. So now a bot plays each level, and only boards that can be cleared without power-ups make it in. Then I pulled my own play log off my phone and saw I was using about a fifth of the timer, so the timers are tuned to how fast we actually play.
That still wasn’t enough. We played into the 90s and kept getting stuck on levels that felt impossible. Every level could be won from the start, but you could play yourself into a corner and the game never told you. Now it notices, says Sackgasse! and offers the Scanner to get you out.
- Levels, each one solved before we play it
- 250
- Products at most, so a level stays under about three minutes
- 45
How the curve works
Levels go in a sawtooth, three normal, one hard and one breather, and hard levels are never back to back. The hard ones switch between Schwer, with double Pfand, and Extrem, which you probably won’t beat first try. Difficulty comes from how many products share a free slot and how deep the shelves go, not from bigger boards. For every level the bot tries a set of seeds and picks one where it wins about as often as that level should.
Changelog
Deeper shelves from level 321
Honestly no level was really hard anymore - once you found the first pair, everything else was just speed. So from level 321 the shelves are stocked several rows deep, and a pair often waits on a third copy you can't see yet. Sehr schwer levels now hold 90 products and should feel borderline impossible sometimes. The power-ups are how you get out.
Six new things on the shelves
California rolls, a big tub of strong mint gum, a black water bottle, Cabo cards, a model plane and a globe are in the shop now. They show up in levels from 250 on, so I re-tuned every level from there to 1000 so the difficulty still holds.
Eight new places to play in
From level 250 the shop keeps moving every 50 levels now - Amuri, our favourite pasta place in Munich, then Verona, Mitrovica, Times Square, Hamburg, Dumbo, a cinema and Bushwick. Verona gets a thunderstorm at night, and in Times Square the screens get even brighter after dark. In the cinema you're sitting in your seat with your popcorn.
Pins for every product you clear
Every product in Marktrita now has its own pin that levels up from Bronze to Platin the more of it you put on the shelves, so 50 Brezn makes you a Brezn-Fan and 800 Corgis makes you a Königlicher Hundehalter. When one levels up mid-level, the timer pops open into a little tag and the pin smashes onto it with confetti and a shop-door bell. I tuned the numbers so you get the last Platin pins somewhere near level 1000, and if you were already playing, your old levels count too.
Marktrita now has 1000 tuned levels
Past level 250 the phone used to just pick any board it could solve and guess a timer, so nobody had checked how hard those levels were. Now every level up to 1000 gets a board and a timer the bot has played through and tuned, same as the first 250. If you're deep into the game, the late levels should feel as fair as the early ones.
Three new groceries, and the levels stay put
Added popcorn, nachos and bubble tea to Einräumen. They show up from level 100. Before that, adding a product quietly reshuffled almost every level I'd already tuned, so I froze the product list levels draw from. Levels 1 to 99 are exactly as they were, and 100 to 250 got re-tuned.
Fixed a clock bug that could close a cleared shop
If you cleared the last triple in the final moment, the clock could still run out and you'd get Ladenschluss on an empty shelf, streak gone. That's fixed, and leaving mid-level can't win or lose it behind your back anymore. Levels past 250 now always have a way through - before, some were stuck before the first move. Also no more stray sounds after you leave the win or loss card.
Price tags on the shelves now pay
The little yellow price tags on Marktrita's shelves used to be decoration. Now each one shows the price of what's in that shelf's front row, and every triple you clear pays a cent for every two euros on its tag, so a Corgi triple is worth more than a bunch of bananas. I took the same amount out of the time bonus, so you don't earn more overall. The money just leans towards the expensive stuff.
A new city every 50 levels
Marktrita now moves to a new city every 50 levels - Munich, Lago di Como, Prishtina, the West Village and then the Financial District. Each one is a painted picture behind the home screen and the shelves, with a night version for dark mode. When you reach a new city, a little welcome screen opens the new store before the next level starts.
Einräumen feels a lot snappier
Dropping a product now keeps the speed of your finger, so it slides into the shelf instead of easing in from a stop. Triples pop sooner and the next row slides in while the pop is still fading. I also fixed a bug where a quick drop right after a triple just flew back home, which honestly felt like lag. Frozen shelves show their thaw again too.
Länger offen gets pricier every time
I kept buying 30 more seconds whenever the clock ran low, so the timer basically stopped mattering. Now the first Länger offen in a try still costs 4,99 €, but each one after that doubles - 9,99 €, then 19,99 €. The hard levels actually feel hard again.
Extrem levels in Marktrita that make you think
I kept winning every level on the first try, so the hard part had to change. Every tenth level is now Extrem - every product is visible and the obvious move is usually the wrong one, so you really have to plan it out. The old hardest levels are now called Sehr schwer, and from level 100 the clocks got a lot tighter.
A calmer win screen in Marktrita
The win screen was getting crowded, with everything smashed into a little card. Now it's just the stars, the money and your streak, centred on one line. When you earn a power-up the gift box actually opens and goes away, and the power-up stays where it was.
Marktrita got a lot more game
Arita and I played into the 90s and kept getting stuck on levels that felt impossible - turns out you could walk into a dead end and the game never told you. Now it says Sackgasse and offers a rescue, and there are 250 checked levels. I also made Pfand scarce, swapped the boring power-ups for a barcode Scanner and a full-screen ALLES MUSS RAUS nuke, and win streaks now fill a stash of free ones. Plus a new icon, a little corner shop.
Stars on the clock and a streak that can break
The timer now shows your three stars, and the one you're about to lose wiggles for a few seconds before it falls off. Win three levels in a row and the next one starts with a bit of extra time - five in a row and Mischen is free too. Lose one and you watch the flames go out with a big GERISSEN! stamp, which honestly stings a little. I also took the leftover-items count out of the top bar, it was just clutter.
Marktrita got a lot harder
I pulled my own play log off my phone and saw I was using about a fifth of the timer on every level, so the clock was basically decoration. The timers are now tuned to how fast we actually play, and every tenth level or so is an Extrem one you probably won't beat first try. There are two new shelves too - sealed cartons you can't see into, and products with a security tag that won't move. Winning is one quick card now with stars, the Pfand ticking up and a big Weiter button.
The sorting game is called Marktrita now
I renamed the grocery sorting game to Marktrita, so the home screen and the logo on the start screen say that now. It's also on TestFlight for the first time - a couple of friends get to try it once Apple's beta review goes through.
Einräumen got a checkout belt, a freezer and a proper win
Levels were starting to feel the same, so I added two new shelves. A Kassenband carries products along the top row, and a frozen shelf only thaws once you clear enough triples elsewhere. Winning now gets confetti and a fanfare, and quick clears set you on fire for extra time. Dropping and merging also feel a lot snappier - that part honestly took the most rounds.
Every level can be won now
I let a bot play every level of Einräumen before we do, and it turns out level 3 was basically unwinnable. Now every level can be won without power-ups, and the hard ones say SCHWER with an easy one right after. Wins print a fuller receipt with stars and a Treuekarte stamp, and there's sound now. All 29 groceries got realistic pictures too, including Lebkuchen, Knoblauch, Salz and Lemon Brownie.