← Blog
·8 min read

How to Verify an App Agency Actually Built Its Portfolio

Five checks — store listings, commit history, the explanation test, arithmetic, and meeting the builders — that expose a faked portfolio in about fifteen minutes. Run every one of them on us.


Key takeaways: A portfolio is a claim. Store listings, commit history, and the way people explain their own decisions are evidence. The five checks below take about fifteen minutes and four of them need no technical background. We've included the links to run every one of them against us.

Portfolios Became Cheap to Fake

It costs nothing to generate screenshots now, and not much more to generate a case study or a team photo. So when you're vetting an agency, "does the portfolio look good" is the wrong question. The one that matters is which parts of it you can verify yourself.

Verification happens to have gotten easier at the same time faking did. App stores, package registries, and public repositories are records nobody can invent after the fact. Below is the routine we'd use, with our own links filled in so you can practice on us.

Check 1: Open the Store Listing, Not the Screenshot

A store listing tells you things a portfolio page can't: the developer account that published the app, when it launched, when it was last updated, and what real users say. If an agency built the app, they can point you at a listing under their own account. If it only exists in their portfolio PDF, they can't.

Run it on us: [FieldDojo on the App Store](https://apps.apple.com/app/fielddojo-trade-calculators/id6761429113), [FieldDojo on Google Play](https://play.google.com/store/apps/details?id=com.notchip.calcrig), [Wageasy on the App Store](https://apps.apple.com/in/app/wageasy/id6761304725), [Wageasy on Google Play](https://play.google.com/store/apps/details?id=com.notchip.wageasy).

While you're there you'll notice FieldDojo's Play Store package id says "calcrig". The app shipped under an earlier working name, and Android package ids can't be changed after publishing, so it's stuck there. Wrinkles like that are actually a decent sign; invented histories tend not to have any.

Check 2: Read Code They Didn't Have to Show You

Commit history is hard to backfill. A repo that's been public for months, with commits spread over time, is evidence in a way a portfolio page never is. Tutorial clones and empty starter repos don't count; look for something with actual engineering in it.

Ours is expo-panoramic-stitcher](https://github.com/notchip/expo-panoramic-stitcher), an MIT-licensed Expo module that wraps OpenCV's panorama pipeline in Swift and Kotlin. You don't need to read C++ for this check. Look at when the commits happened, whether the README explains real tradeoffs, and whether the [engineering write-up matches the code it describes.

Check 3: The Explanation Test

Ask why they built something the way they did. Someone who actually did the work will talk about tradeoffs, what it cost, what they'd change. Someone who didn't will give you adjectives.

You can run a version of this test on their blog before you ever talk to them. Long decision records and post-mortems are hard to fake; a "Top 10 App Trends" listicle takes a model about a minute. Ours is here if you want to apply the same standard — the offline-first decision record and the OpenCV module write-up are the fair tests.

Check 4: Do the Numbers Add Up

Count what the agency shows, then compare it with what the agency claims. Twelve case studies claimed but three shown? A five-star rating with no named reviewer anywhere? Ask about it.

We have to include our own example here. Until recently the hero section of this site claimed "12+ apps shipped · 98% on-time rate · 4.9/5 client rating." It was template filler from before we had standards about this, and it fails the exact check this section describes. We replaced it with the real numbers: 3 products live, 2 app stores, 1 open-source module. Embarrassing to admit, but the alternative was leaving it up.

Check 5: Meet the Hands, Not the Suits

The classic agency failure is bait-and-switch: senior people sell the project, junior people you never met build it. The defense is to ask, before signing, to speak with the specific people who will write your code, and to ask who reviews their work. Our questions-to-ask-any-agency list has this and seven more. A shop that dodges it is telling you something.

At our size there's nothing to switch to: the people you talk to are the people on the keyboard, and they're listed by name, with locations.

What a Small Shop Legitimately Can't Show You

To be fair to small shops, including us: we can't show you a Fortune 500 logo wall, a fifty-person bench, or a ten-year client roster. Not having something to show is different from faking it, though. The question worth asking is whether everything they *do* show checks out. Two installable apps and a public repo is more actual evidence than a logo wall you can't verify.

If the Team's Location Gives You Pause

Some founders get quiet when they hear a team is offshore, usually because a previous shop hid behind the distance. So, plainly: Notchip is spread across South Asia, Southeast Asia, and the US. Engineering and leadership are in India, design is in Kuala Lumpur, development is in New York, and the roster is listed by name on the About page. We'd rather you read that here than find it out on a call.

None of the things that actually protect you depend on geography anyway. Milestone billing means you can walk away at any approved milestone. The repo is yours from day one. The first milestone can be deliberately small, meetings happen on your hours rather than ours, and everything we've claimed in this article survives the five checks above.

Run All Five on Us

The whole thing takes about fifteen minutes. Run it on every agency on your shortlist, including us, then tell us about your project. We'd rather talk after you've checked.