How To Get Involved In Decentralized Finance (DeFi) And Start Earning 15%+ APY From USD

This article is also posted on Medium. Click here to view on Medium.

Initially, I wanted to write an article explaining to people how they could currently earn 15%+ annual yield on their USD with crypto in a low-risk way… but then I realized that majority of people are only familiar with buying and selling crypto through apps like Coinbase, Robinhood, and Shakepay and not with using their crypto to interact with the Decentralized Finance (DeFi) world.

So the goal of this article is to show you how to do this in the simplest and easiest way possible so you can start doing things like earning 15%+ annual yield from your USD. If at any point you have questions, just message me on Twitter (

The crypto ecosystem is extremely exciting right now. Everyday, there is something new that arises or a big improvement in the ecosystem that makes it really hard to keep up. But because there is so much foundational innovation happening behind the scenes, the UX and the way majority of individuals interact with crypto is complicated. This is okay for now… it just means that if you want to be more involved in this space and interact with the DeFi world, a little more education is needed. So hopefully this article gives you that extra education to gain more of an edge.

Okay, what’s on the agenda…

  1. How to buy crypto with your USD through a centralized exchange (e.g. Coinbase)

  2. Why keeping your crypto on a centralized exchange is okay initially, but not recommended

  3. What to do because of these centralized exchange problems — the hardware wallet solution

  4. How can you move your Bitcoin and Ethereum to your hardware wallet

  5. What DeFi is and how to enter the world of DeFi with your hardware wallet

  6. DeFi example: How to buy $DPI (DeFi Pulse Index) — step by step

How to buy crypto with your USD through a centralized exchange

Let’s assume you don’t have any crypto at the moment, and all you have is USD in your bank account. And for simplicity purposes, let’s say you want to buy some Bitcoin and some Ethereum. (Note, you’ll want to purchase Ethereum as Ethereum is needed in order to enter the DeFi world as explained later in the article).

Currently, the easiest way to buy some Bitcoin and Ethereum is through a centralized exchange like Coinbase, Binance, or Shakepay. Majority of people purchase their crypto this way because you can directly link your bank account to the app and because the UI/UX of the apps are easy to understand and navigate.

Steps to purchase your crypto (Coinbase example):

  1. Download the Coinbase app from the iOS/Android app store.

  2. Sign up for an account. When signing up, you will need to provide identity information and link the app to your bank account (e.g. Chase, Bank of America, TD, RBC, etc). Identity is needed for KYC compliance (KYC == “Know Your Customer”) as Coinbase needs to know who is buying/selling what in order to abide by compliance rules.

  3. After signing up for an account and getting approved, you can start purchasing crypto. (Note, your account will have a weekly approved spend limit which is an upper limit of $$$ you can spend from your bank account to purchase crypto).

  4. Now to purchase crypto with USD from your bank account, tap the “trade” button, select “buy crypto with cash”, select which asset you want to buy (i.e. Bitcoin and Ethereum), how much you want to buy, and tap purchase.

  5. After a successful purchase, you should see that your portfolio now contains the crypto you bought.

Congrats! You have just purchased crypto with your USD from Coinbase. What happened behind the scenes was you just paid Coinbase $X (plus a fee) for them to purchase Bitcoin and Ethereum on your behalf and hold it (i.e. custody it) for you. Now Coinbase is your bank for crypto.

Why centralized exchanges are okay initially, but not recommended

Your Bitcoin and Ethereum is now sitting in your Coinbase account, you’re watching your portfolio price move up and down, and you feel alive. But what if I told you that keeping your crypto in your Coinbase account was not recommended?

Here’s some reasons why…

1. Not your keys, not your coins

There’s a famous phrase that people in crypto always say, and it’s “not your keys, not your coins”. This is a super important phrase because it refers to the fact that if you don’t have control over your crypto (via their private keys) then you aren’t truly in control over what you can do with your crypto — you need to ask for permission to use it. Ledger academy has a great article on this.

Since your Bitcoin and Ethereum is being held in Coinbase, Coinbase is in control of them and decides what you can and cannot do with them. You need to ask Coinbase for permission to use your Bitcoin and Ethereum.

For example…

  • Coinbase decides how much crypto you can buy and sell per week and when you can buy and sell. There has been many situations where people wanted to buy or sell crypto on Coinbase and couldn’t because their weekly “spend” limit had already been met.

  • When Coinbase goes “down for maintenance”, which they often do in times of high volume, they will not let you do anything with your crypto (e.g. buy, sell, or transfer).

  • If one day you want to spend your crypto, Coinbase could reject you for some obscure reason and then you’d be stuck.

2. Trusting the centralized exchange to keep your crypto secure

Since your Bitcoin and Ethereum is held in Coinbase, you are trusting Coinbase for their security — if they get hacked, get shut down, or get in trouble, you could lose all your coins. This has happened to a few centralized exchanges already. One example was Quadriga where all their customers were unable to access their crypto due to fraud committed by the Quadriga co-founder. Here’s a good story on it by Vanity Fair.For what it’s worth, Coinbase is one of the most trusted centralized exchanges in the ecosystem.

3. Being restricted to tokens only listed in the exchange

Coinbase currently has over 25 tradable tokens listed on their exchange (see here), but are missing a number of tokens. In order for a token to get listed on Coinbase’s exchange, Coinbase and their team internally reviews that token, and if approved, then makes it accessible to Coinbase users and allows them to buy or sell that token. Now, let’s say there was a token that you really wanted to buy or sell (for example $DPI) that is not listed on Coinbase, you’d be out of luck — no buying/selling $DPI for you.

4. Inability to interact with DeFi apps/protocols.

More on this later, but let’s say you wanted to get a little fancy, and “lend” out your ETH in order to earn some interest on it (just like how you currently lend out your USD to earn interest on it) via a DeFi protocol like Compound. You can’t do that from your Coinbase account since Coinbase doesn’t have a “Compound integration”. You’d need to wait for Coinbase to build that functionality in their app in order for you to interact with it. 

What do people do because of these centralized exchange problems? What’s the recommended solution?

The above four problems are true for any centralized exchange, so what people do to solve this is they move their crypto from Coinbase to their own hardware wallet.

What is a hardware wallet?

A hardware wallet is a physical device designed to securely store your crypto (private keys). You can think of a hardware wallet as a USB stick that holds your coins. It’s considered safer than desktop or smartphone wallets, mainly because they don’t connect to the Internet at any point.

How does a hardware wallet solve the 4 problems mentioned above?

  1. When your Bitcoin and Ethereum is in your hardware wallet, you can do whatever you want with it, whenever you want. This is because now you are in control of your private keys now, not Coinbase. Coinbase doesn’t control your crypto now. You can now buy, sell, or transfer your crypto from/to whomever you’d like, whenever you want. It’s the same as if you had cash in your actual wallet — you are in control of your cash. The main thing here is that you don’t need to ask anyone for permission when it comes to your crypto. You are in complete control now.

  2. A hardware wallet is much more secure. When you hold your crypto in your hardware wallet, instead of on Coinbase, you’re no longer trusting Coinbase with your crypto’s security. You are now your own bank and are responsible for your crypto’s security. The only way you get hacked with a hardware wallet is if someone physically steals your wallet from you and knows your pin/2-factor information. With Coinbase, you can fall victim to data privacy leaks, internet scams like phishing, and more.

  3. With a hardware wallet, you can hold any type of token you’d like — you’re not limited to just the tokens that are listed and approved on exchanges like Coinbase. If a new token comes into existence and you are bullish on it and want to buy it, you can do so and hold it in your hard wallet (more on this later).

  4. With a hardware wallet, using any any DeFi protocol/app is easy. You simply connect your hardware wallet to your computer via USB port, then connect your wallet to MetaMask (more on MetaMask later), and then connect to the protocol/app via MetaMask. Okay it doesn’t sound easy, but trust me, after the first time you do it, it’s easy. Now you have the freedom to interact with DeFi apps however you want (more on this later). No need to wait for Coinbase or another centralized exchange to build the tech to integrate with those protocols in order to use them.

How do you move your Bitcoin and Ethereum from Coinbase to your hardware wallet?

Okay, we’ve now decided that we want to move our Bitcoin and Ethereum from Coinbase to your hardware wallet, here’s what you need to do:

1. Purchase a hardware wallet (either a Trezor or Ledger). You don’t need the most expensive model, you’ll be fine with one of their low-cost options.

2. Set up your hardware wallet by following the instructions included when you receive your Trezor or Ledger. Make sure you have a Bitcoin address/account and an Ethereum address/account created inside your hardware wallet. 

Inside your hardware wallet you need to set up internal accounts/address that hold your cryptocurrencies and tokens built on top of specific crypto blockchains. For example, your Bitcoin account will hold your Bitcoin, and your Ethereum account will hold not only your Ethereum but also all tokens that are built on the Ethereum blockchain (like $DPI).

3. Find your Bitcoin public address from your hardware wallet (usually by navigating to the Bitcoin account and tapping “receive”), copy the Bitcoin public address, go to Coinbase and send your Bitcoin from Coinbase to that public address.

4. Find your Ethereum public address from your hardware wallet (usually by navigating to the Ethereum account and tapping “receive”), copy it, go to Coinbase and send your Ethereum from Coinbase to that public address.

5. Now if you look inside of your Ledger or Trezor app, you can see your crypto inside of it.

Pro tip:

Instead of using the Ledger or Trezor app to view your current crypto holdings on your hardware wallet, I like to use Zapper. It’s a simple dashboard for DeFi, where you can easily track and visualize all your DeFi assets and liabilities in one simple interface. All you need to do is connect to Zapper via your MetaMask and Zapper will watch the public address of your Ethereum address and will show you everything in that address.

What is DeFi?

We’ve been talking about DeFi here and there, but never really explained it yet. Decentralized finance (DeFi) is a world of financial services with no central authority. It involves taking traditional elements of the financial system and replacing the middleman with a smart contract. It can also be described as the merger between traditional banking services with blockchain technology. As of today, April 25 2021, there’s over $55B of USD locked into and circulating inside DeFi apps!

An example of a DeFi service is decentralized loans. The current, centralized way to receive a loan is that you usually have to go to a bank, fill out an application, and then have that bank determine if you’re eligible to receive a loan and how much of a loan you can take. The problem with this is that the process can be long, time consuming, unfair, unequal, and costly. But in a decentralized world, you could cut out the middleman directly (in this case the bank) and get a loan in an unbiased way that is purely based on factors such as how much crypto assets you own.

For DeFi services/apps to be possible, they need to be run on a decentralized infrastructure. Most DeFi apps are currently built on top of Ethereum, and in order to perform “actions” within the DeFi app you need to use/spend ETH (“gas”) in order to pay the Ethereum network fees. More about “gas” in a later article, but this is why ETH is so important and why it’s recommended to purchase at the beginning. Because in order to use any of the DeFi apps built on top of Ethereum, you need to spend ETH.

How to enter the world of DeFi (Hardware wallet -> MetaMask -> DeFi protocols)

I lightly touched on this earlier, but once you have Ethereum in your hardware wallet the process of interacting with DeFi protocols/apps becomes pretty simple.

In short, all you need to do is connect your hardware wallet to your computer via USB port, then connect your wallet to MetaMask, then connect to the protocol/app via MetaMask, and then you can do whatever you want on that app.

What’s MetaMask?

MetaMask is an Ethereum wallet in your browser. It’s a Google Chrome extension that lets you access decentralized apps in your browser. It does this by injecting the Ethereum web3 API into every website’s javascript context so that these decentralized apps can read from the blockchain. MetaMask also lets users create and manage their identities online (via private keys and hardware wallets like Trezor and Ledger) so that when a decentralized app wants to perform a transaction and write to the blockchain, you get a secure interface to review the transaction before approving or rejecting it.

Almost every decentralized app has a button on their website that lets you connect to their protocol via MetaMask.

So make sure you download MetaMask for your Google Chrome browser here:

How to buy $DPI (DeFi Pulse Index) — step by step

The best way to grasp all of this is through an example. In this example, we’re going to buy some $DPI with some of the Ethereum in your wallet. For context, $DPI (the DeFi Pulse Index) is a capitalization-weighted index that tracks the performance of decentralized financial assets across the market. It currently is a weighted basket of 14 top DeFi tokens. You can think of it as the S&P500 but for DeFi. It’s awesome.

So to buy some $DPI…

1. Connect your hardware wallet to your computer (via USB) and unlock your hardware wallet

2. Click on the MetaMask Chrome extension and “Connect Hardware Wallet”

3. The best place to buy $DPI is through Matcha, which is a decentralized exchange. In the DeFi world there are a number of decentralized exchanges that let users buy any type of token that exists in the ecosystem and which has liquidity for, but Matcha is especially good because it helps you find the best prices across exchanges and also lets you purchase and sell tokens in the most cost efficient way. But more on Matcha in another article, all you need to know is Matcha is the best place to purchase your tokens.

So go to Matcha and connect your wallet via MetaMask and search for “DPI”

4. Once you’ve found $DPI, you should see a page like the image above. Here you want to specify that you want to pay $ETH (Ethereum) and receive $DPI.

5. Specify how much $ETH you want to pay or how much $DPI you want to receive, and when you’re ready, click on “Review Order”.

6. After clicking “Review Order”, you’ll first see a screen asking you to “Approve my ETH”. This first level of approval is needed for security purposes as it lets you confirm that you’re allowing Matcha to trade your ETH on your behalf. It will look like the image below, but instead of $DPI it will say $ETH.

7. After clicking “Approve my ETH”, your MetaMask Chrome extension will pop up first asking you if you would like to allow Matcha to access your ETH. It will look similar to the image below but instead of Uniswap it will say Matcha and instead of $DAI it will say $ETH. (Sorry for these weak images, I got lazy…). To approve this, first click the “Edit” button next to “Transaction fee” and change the gas speed to “fast”, so that the transaction can be processed immediately. Then click “Confirm” and then “Approve”.

8. After you clicked “Approve”, you’ll be asked to confirm the transaction on your Trezor or Ledger. This is another security step so you can actually confirm the transaction on your hardware wallet. So go ahead and do that.

9. Next, you’ll get to review your total order. You’ll get to see how much you’ll pay (including estimated gas fees). When ready, click “Place Order”.

10. After clicking “Place Order”, MetaMask will pop up again asking you to confirm the transaction. Again, adjust the Transaction fee to “fast” and then approve when ready. After approving on MetaMask, you’ll be asked to again confirm the transaction on your hardware wallet.

11. Done! Finally! You should now be able to see your new $DPI on Zapper and your wallet 😊

Yes, there are a lot of steps to enter the DeFi world, especially when it comes to approving all of these transactions. But as mentioned before, rapid innovation comes with its laggards. In this case, UX suffers but over time it will improve.

That’s it! You’ve now entered the DeFi world in a very small way.

Congrats, you’ve now purchased crypto from Coinbase, moved it to your hardware wallet, and purchased some $DPI through Matcha. This is just the beginning for you. There’s so much you can do now that you have the foundation and basics down!

In my next article, I will describe how you can lend out your $ETH on Compound and use it as collateral so that you can borrow $USDC against it, and then use that $USDC to enter a liquidity pool to farm some other tokens, and earn 15%+ yield on your borrowed $USDC in a low-risk way.

If you have any questions throughout, feel free to send me a message through Twitter: 👋

Please share with anyone you feel may find value from it as well 🤗

How To Create, Launch, And Grow A Successful Shopify App

As many of you already know, Shopify has been taking the ecommerce space by storm and is by far the best platform for anyone, anywhere, to start an online business.

One of the reasons why Shopify is such a great platform for entrepreneurs is because of their App Store which contains thousands of free and premium apps/plugins that merchants can integrate with their store to improve operations & revenue, offer customers a better experience, and more.

On average, Shopify merchants use 6 apps from the App Store to help power their storefront. Some examples include:

And not only is the App Store great for Shopify merchants, it also unlocks amazing opportunities for companies and developers to create apps on the platform that can drive revenue for themselves. If done well, apps can pull in anywhere between $10k to $100k a month, and some can do even more than that.

Myself and my team have built a number of apps for the Shopify App Store over the past years that do over $100k in revenue per year collectively for 3000+ merchants.

We’ve gone through the pains and learnings of what is needed to get started on the Shopify App Store and what it takes. We wish we had an initial guide/overview to prime us for what to expect, which is what prompted me to make this reading.

So in this reading, I’ll take you through the items and buckets to consider to help you create, launch, and grow your Shopify app smoothly. Along the way, if you have any questions, need any help, or find anything confusing, feel free to message me on Twitter ( I’m happy to help 😊

First, why build an app for the Shopify App Store?

The easiest way to target ecommerce merchants is to go where they’re going. The place where most merchants reside is on Shopify. By building your app on Shopify, your app immediately is able to be seen by 800,000+ merchants. Distribution is king, and Shopify is the kingdom.

Revenue potential is also tremendous on Shopify. The average Shopify app developer earns $2000 monthly per app.

Lastly, help further provide Shopify merchants with tools needed to be successful. From a social perspective, there is a sense of real meaning you can garner by providing meaningful tools that help entrepreneurs be successful and control their own destiny.

How do Shopify merchants access their Shopify apps?

When merchants login to their Shopify account on the web, they access their Shopify Admin portal, from which there is a dedicated “Apps” tab. Here the merchant can see all of the apps they have installed and can visit the Shopify App Store to browse and install other apps.

Some Shopify merchants also use Shopify’s Point Of Sale (POS) product, in which they can access apps either from their home screen or through their Settings tab.

When Shopify merchants click on an app, it either opens the app in an embedded view (like the image below), or it opens your default web browser with the URL to the website that loads the app.

How to discover what app to build on the Shopify platform?

One of the best ways to identify what app you should build is by speaking directly to Shopify merchants to understand what pain points they’re having, what inefficiencies they might be having operating their business on Shopify, how they’re currently driving revenue, what they could be doing better to drive more revenue, and more. From these initial conversations you can find something to build that will help the merchant improve their business.

However, oftentimes getting in touch directly with Shopify merchants is hard… so what do you do?

Browse websites such as RedditShopify’s forum, Twitter, and other places to see what Shopify merchants are complaining about. Oftentimes they post problems they’re having directly on these forums. The fact that they took the time to post on these sites is a good proxy for how much of a burning problem it is. And the problems that frequently appear on these sites provide a good proxy of how many merchants it might be affecting on the platform. You can then directly reach out to these merchants to offer help.

Here are some good examples of threads where merchants express their frustrations:

Will Shopify build your app idea themselves?

No, don’t worry about it. Oftentimes people ask me, “what if Shopify just builds my app idea themselves?”. My answer to them is always no, don’t worry about that, build it anyways — they won’t build your app.

The reason is, Shopify has so many other higher priority items they’re executing on internally, they don’t have the time or resources to build your app. Also, they want to continue to foster, promote, and grow the Shopify app ecosystem so that it continues to be helpful for merchants and continues to create a larger moat for themselves.

One other insight is that most apps on the platform generate revenue, and Shopify takes 20% of the revenue any app generates on their platform. If Shopify were to build the app themselves, they’d be losing out on that incremental 20% of revenue they’d be earning from that app if a developer were to make it.

So overall, there’s an extremely high probability Shopify won’t build your app. And if they do want to build your app, they might just be better off acquiring yours 😁

Ok, so you know what to build. Now before diving into building, there’s a few things to consider…

1. Embedding your app inside of Shopify vs. building your app on a standalone site

When creating an app on the Shopify platform, you essentially have 2 choices.

You can either allow users to access your app inside of the Shopify Admin portals (on Web, POS, Ping, etc) or you can redirect them to a separate external website. There are pros and cons to both decisions…

Embedded app pros:

  • Merchants don’t have to leave the Shopify Admin portal in order to access the app. This leads to a smoother and frictionless experience, especially on mobile devices and other Shopify platforms (e.g. POS, Ping). On mobile devices, Shopify just opens an in-app-browser inside the Shopify app so you don’t need to formally leave the app.

  • Allows you to access features and extensions (such as admin links, bulk actions, POS cart) that are only offered for embedded Shopify apps.

Embedded app cons:

  • Less real estate to play with, since the entire left side of the screen (on desktop) is consumed by the Shopify Admin navigation.

  • The embedded app itself is presented inside of an iFrame in Shopify Admin, which sometimes limits certain development items you may want.

  • Only Shopify merchants can access your app since it is embedded directly inside the Shopify admin portal. If you want to expose your app to the public, you’d need to additionally host it on your own website.

External app pros:

  • More real estate to play with. The amount of additional space you can leverage can make a big difference depending on the functionality of your app.

  • Can better tightly control your development since you’re not playing inside of an iFrame anymore.

  • If your app is integrated with other platforms like BigCommerce, Magento, or even just open to the public to use, you can just leverage one hosted domain and create integrations to all sources.

External app cons:

  • Shopify merchants don’t get that “in-app Shopify” experience.

  • Some functionalities may not be exposed to your app since you’re not directly inside the confines of the Shopify admin portal.

2. Responsiveness and compatibility across devices

Mobile usage continues to rise over the years, and even though most Shopify merchants access their Shopify Admin portal via desktop, many use their tablet and mobile devices to access it. Therefore, it’s even more important to make sure your app is mobile responsive and the experience across all device sizes is smooth, efficient, and intuitive.

It’s also important to consider which platforms within Shopify merchants are using your app on. Remember, Shopify has a number of products (Web, POS, Ping). On POS, merchants tend to primarily use an iPad. On Ping, merchants tend to primarily use their mobile devices.

So before building, think through which products merchant will most likely use your app on.

3. App permissions

When merchants first install your app from the app store, they are presented with a permissions screen which they have to approve in order to proceed. This outlines to them what permissions your app will be need in order to operate. For example, permissions to view products, manage orders, manage customers, etc.

Before building out your app, try to really think through what permissions your app might need. It’s oftentimes difficult to do so at the beginning since your app will grow and change quite often over it’s development history, so in this case I find it’s better to overestimate what permissions are needed and then trim it down once you get better clarity. You can view all the available permissions you can request here (

The reason you want to overestimate instead of underestimate is that if you were to underestimate first and then add more permissions over time, you’d need to continuously prompt the user, inside your app, to re-approve new permissions which can lead to an annoying and confusing experience to your user.

4. Determining your pricing model

Shopify offers 3 main ways you can charge merchants (outside of it being free)

  1. Subscription charges
    These charges are for recurring use of an app, such as a monthly subscription. They appear on the merchant’s regular Shopify subscription bill and are charged at the beginning of each subscription cycle.

  2. One-time app purchases
    These charges are for specific services provided by an app (such as a single migration of your data from one platform to another). They appear on separate bills and are charged to the merchant at point of approval.

  3. App usage charges
    These charges are variable based on how much the merchant is using the app or the service (such as the number of interactions provided by a customer service app). They appear on the merchant’s regular Shopify subscription bill. In this scenario, the merchant pays 30 days after they are charged.

Most successful apps lean towards subscription charges (with an initial free trial). The next most popular way seems to be one-time purchases.

In my experience, usage-based pricing seems good in theory, but it ends up putting a lot of risk on you, the app developer. For example, you can charge a merchant $X based on a certain amount of usage, but when you charge them, the merchant doesn’t pay until 30 days later. There has been many scenarios where a merchant might close their store before the 30 days are up, thereby avoiding the need to pay you, which leaves you unable to collect payment from them because their store is closed. Even if a store closes, Shopify won’t collect the payment for you also because they won’t hunt after a closed store.

This is something to keep in mind when choosing your pricing model. You can learn more here (

5. Don’t overgeneralize your app, keep it focused

If we think a bit in the future regarding how Shopify merchants will discover your app, the more focused your app is, the better it will do and easier it will be discovered by Shopify merchants.

The Shopify App Store is a great place for merchants to discover your app, and SEO and Shopify ads play a huge role in how merchants find your app. The thing to be mindful of here is your keyword optimization in the title and descriptions of your app.

With other search engines, like Google, you’re able to create multiple pages on your website that target different keywords resulting in many of your web pages appearing in search results stemming from a multitude of keywords.

However on the Shopify App Store, the only thing that is leveraged for organic discovery is your App Listing page. Knowing this, it becomes difficult to optimize for a multitude of different unrelated keywords and instead becomes more important to optimize for a set of few tightly correlated keywords.

In other words, it’s important to keep your app focused and to target your App Listing’s title, description, and content body to a specific set of keywords rather than go too broad and overgeneralize it. For example it’s better to name an app as “Bold Subscriptions” rather than “Payment & Finance Platform”. Bold Commerce does a great job of this.

The more general you make your app, the harder it would be for users to know how it will solve their problems at a first glance, and it will cause metrics for your app like CTR, Install Rate, etc to take a hit.

If you find that your app has a lot of features, consider breaking out those features into a separate app altogether so you can continue to keep focused apps. It might be even better as well since it could provide incremental revenue that you would have not gotten if you didn’t break it out into it’s own app.

When you do this, you can even cross-promote your apps within the apps you’ve created. For example, you can have a page/tab in your app that says “Check out apps that pair well with this one”.

6. Understanding what makes apps successful

The theory is quite simple. All successful Shopify apps do one or more of the following:

  • Generate positive and large ROI for the merchant. At the end of the day a merchant wants to see that if they pay $X to use your app, they get greater than $X in returns.

  • Drive operational efficiencies for the merchant and eliminate major headaches. These could be things like inventory management, employee scheduling, etc.

  • Offer unique experiences for the merchant’s customers. This could be something like an augmented reality (AR) experience for your products, personalized experiences, etc.

Keep these in mind when deciding on how to execute your idea.

Ok, now you have a plan, let’s start building! Here’s how to start…

1. Designing your Shopify app

One of the key things to consider when designing your Shopify app is that since Shopify merchants are very familiar with Shopify’s design, colours, and patterns, it’s great if you can continue to incorporate similar aspects of Shopify’s designs and patterns inside your app. This is so that merchants can have continued familiarity and make them feel like your app is a true Shopify app.

Shopify makes this really easy with their Polaris design system. When designing your app on Figma or Sketch, you can use their design system to easily leverage specific components. When you eventually move onto developing the frontend of the app, Polaris comes with a React Component Library so you don’t need to reinvent the wheel and build everything from scratch. It tremendously speeds up your execution.

2. Beginning to code your app

When first building out your app, take a read through some of Shopify’s tutorials and best practices. There’s some great ones to help you get your toes wet.

However, one thing to note is that they’re not extremely extensive and don’t cover certain things you’ll need to implement in your app. One example is the storing of a merchant’s access token in your database. Did you know there’s 2 types of tokens you can get from a merchant from Shopify? An online and an offline one. One expires, and one doesn’t? Shopify often refers to the online token in their tutorials and documentation, but the important one is the offline token which will need to be stored in your DB so you can access APIs reliably and consistently.

This is just one example, but there’s many other items you’ll come across, such as the best way to implement Shopify’s webhooks for listening to customer’s behaviours, best way to execute script tags on storefronts, how to properly send a user through the re-authentication flow, etc.

Once you get your footing and build the foundation, everything becomes rather straightforward. Most apps are built with React & Node, but it’s easy to use Rails or anything else you’d like.

If anyone needs help with getting started or has questions about bugs or weird scenarios you come across, just message me on Twitter ( and I can help 😊

3. Standing out in the App Store

We briefly discussed this earlier, but SEO is the main way you can differentiate yourself in the Shopify App Store. And being successful at it consists of a few things:

  1. Positioning the appropriate keywords in your App Listing’s title, description, and body.

  2. Gathering lots of reviews from your users at a high rating. The more reviews and higher rating your app is, the higher you’ll place in search results. This is because it signals to Shopify that merchants really love your app.

  3. Completing all of the sections in your App Listing page, such as videos, images, screenshots, pricing descriptions, integration information, and more.

  4. Adding Google Analytics to your App Listing page so you can view and analyze what people are searching when they come across your App Listing page and what is driving installs.

One other way to stand out in the App Store is by speaking to the Shopify Partners team in hopes of getting featured on one of their manually curated lists.

Note, that this doesn’t replace the fact that at the end of the day, you need to build a great app that provides value to Shopify merchants.

4. Analytics and customer support

Out of the box, Shopify gives you some helpful analytic reports to help you view and evaluate how well your Shopify app is performing. These can all be found in your Shopify Partner account.

However, these analytics don’t paint the entire picture. I recommend integrating Mixpanel into your Shopify app so you can better measure and analyze user behaviour, retention, and other metrics you’re curious about.

As well, be sure to add Google Analytics to your App Listing page so that you can monitor how Shopify merchants are discovering your app in the App Store.

As for customer support, Shopify exposes your support email on your App Listing page so that merchants can reach out to you if you have any questions. But in order to easily talk to your early merchants to get feedback and help them with whatever needs they have, I recommend integrating Intercom or Crisp into your app to provide a way for merchants to quickly start a live chat with you.

5. App Store submission

A quick note on submitting your app to the App Store. When your app is ready and you’ve completed your App Listing application, your app will then be submitted to the Shopify team for reviewal.

This process generally takes a minimum of 3 business days, in which the Shopify team will manually go through your app themselves, test major flows, and assess that your app doesn’t violate any policies they have. If anything they find is broken or violates any policies, they then send you an email requesting you to fix those changes.

Once you fix all of their requests/changes, your app will be approved and be available for merchants to download! The good thing is that your app only goes through an approval process once. Once you’re approved, your app is approved for the long term.

That’s it!

And with all that, this should position you in a great way to be successful when creating and growing your Shopify app.

If you have any questions throughout, feel free to send me a message through Twitter: 👋

Please share with anyone you feel may find value from it as well 🤗

How We Grew Our Local SEO To The Top Of Google And To 1000+ 5-Star Reviews Within 3 Months

Step-by-step guide on how we built our Local SEO to the top of Google

Join hundreds of people who receive this newsletter of news, thoughts, deep dives from me about Startups, Growth, Engineering, Sports, and more - subscribe now.

Feel free to follow the journey on Twitter and Instagram.

Hi everyone! 👋

In my last post, I outlined a step-by-step guide of the approach I took when building out our SEO for Fiix. After implementing my learnings, the one area that I found we still had lots of room for improvement was with regards to Local SEO. Local SEO doesn’t necessarily apply to all businesses, but does to a large portion of them. When researching Local SEO, it was very hard to find detailed information and advice on what specifically to do to improve it. Majority of articles and advice were fluff and didn’t provide the value I was looking for. Through a lot of experimentation, we were able to grow our Local SEO to the top of Google, get more than 1000+ 5-star reviews across our Google Business pages, and now it is just baking and improving as time progresses. 🔥

Hope you all enjoy the article. Feel free to share with friends, colleagues, or whoever you feel may find value from it. ❤️

If you have any questions or want more specific details, feel free to message me on Twitter (or ask for my email through there).

If you enjoyed the article, click here to tweet to tell others about it. 🤗

How We Grew Our SEO To 70K+ Visitors A Month

Step-by-step guide on how we built our SEO to 70K+ visitors

Join hundreds of people who receive this newsletter of news, thoughts, deep dives from me about Startups, Growth, Engineering, Sports, and more - subscribe now.

Feel free to follow the journey on Twitter and Instagram.

Hi everyone! 👋

When researching SEO, it was very hard to find detailed information and advice on what specifically to do to improve SEO. Majority of articles and advice were fluff and didn’t provide the value I was looking for. Through a lot of experimentation, we were able to grow our SEO, and now it is just baking and improving as time progresses. 🔥

Hope you all enjoy the article. Feel free to share with friends, colleagues, or whoever you feel may find value from it. ❤️

If you have any questions or want more specific details, feel free to message me on Twitter (or ask for my email through there).

If you enjoyed the article, click here to tweet to tell others about it. 🤗

Loading more posts…