The studio
About Useful Tools
Useful Tools is an independent software studio building focused apps for Shopify merchants. One app, one job, done right — that is the whole idea, and everything below follows from it.
Who we are
A small team that likes small tools
We are a small, independent team of engineers with a long-running interest in e-commerce. We are not a venture-funded suite vendor and we are not trying to become one. We build and operate our own apps, answer our own support email, and read every review — the people who write the code are the same people you reach when something goes wrong.
We started this studio because so many merchant problems are small, specific, and unglamorous: a barcode that will not scan, a label sheet that prints misaligned, a price list that needs exporting. Problems like these rarely deserve a sprawling suite with a settings page you need training for. They deserve a small tool that does the one thing, does it correctly, and stays out of your way. That is the kind of software we enjoy making, and it is the only kind we publish.
What we believe
Four principles, applied to every app
These are the same four principles listed across this site. Here is what each of them means in practice.
One app, one job
Every app solves a single problem you can describe in one sentence. No suites, no feature creep — a tool you understand in the first minute.
This is a constraint we apply before writing any code: if we cannot describe the problem an app solves in a single sentence, we do not build it. A narrow scope keeps the interface small, the settings page short, and the number of ways things can break low. It also means you can evaluate an app honestly in minutes — install it, run it once, and you have seen everything it claims to do.
Minimal permissions
Each app requests only the Shopify scopes it needs to do its job. If a feature would require broader access than it is worth, we do not build it.
Access is a liability, for you and for us. When you install one of our apps, the permission screen should read like the feature list: nothing extra, nothing reserved for later. Every scope an app requests is documented on its privacy page together with the reason it is needed, and widening access is treated as a serious decision, never a default.
What you see is what you get
Previews match the final output, plan limits mean what they say, and nothing important hides in fine print.
If a preview shows your labels at a given size, that is what comes out of the printer. If a plan says a limit, that limit is exactly where the plan stops — not an estimate, not a soft cap with fees behind it. We would rather lose a sale than surprise a customer, because surprised customers are the ones who uninstall.
Quotas, not credits
Paid plans come with a monthly quota that resets on its own. You never buy credit packs and never watch a balance expire.
Credit packs shift bookkeeping onto you: balances to watch, top-ups to remember, capacity that quietly expires. Our paid plans are simple monthly quotas that reset on their own. You always know what a month costs, and you never pay for something you did not use.
How we operate
The bar every app has to clear
Before any app reaches the Shopify App Store, it has to meet the same standards. None of these are optional, and none of them depend on how busy we are.
GDPR webhooks on every app
The customer data request, customer redact, and shop redact webhooks are wired and verified on every app before it is ever submitted for review — not added after the fact.
Minimal OAuth scopes
Each app requests only the Shopify permissions its one job requires, and each scope is listed with its reason on the app's privacy page.
Support in under 24 hours
Write to bastien.hugon.pro@gmail.com and a person who works on the code replies within 24 hours. There is no ticket triage layer between you and the people who can actually fix things.
No credits, no surprise billing
Plans are monthly quotas that reset on their own. Prices are published on this site and on each App Store listing; there are no hidden fees and no charges outside Shopify billing.
Tested end to end before submission
Every app runs through automated end-to-end tests against a real development store before we submit it. An app with a failing or skipped test does not ship.
Our stack
What the apps are built on
Our apps are TypeScript from end to end. They are built on React Router, run embedded in the Shopify admin, and talk to Shopify exclusively through the official GraphQL Admin API. All of them share one common foundation for authentication, billing, and GDPR webhooks, so a fix or hardening improvement in that foundation reaches every app at once instead of being patched app by app. Hosting runs on Vercel with Postgres databases from Neon, and errors are tracked with Sentry, which means we often know about a problem before anyone has to report it. This website is a static site with no cookies, no analytics, and no client-side tracking of any kind.
See the result for yourself
The catalogue is the proof. And if you want to know anything this page did not answer, write to bastien.hugon.pro@gmail.com — a person replies within 24 hours.