Getting certified in the App Marketplace

Stand out in the App Marketplace, invest in a great customer experience, and earn rewards by applying for certification.

Minimum certification requirements 

  • 6+ months: Your app must be listed in the App Marketplace for at least six months and maintain a minimum of six active unique installs for the entire duration.
  • API traffic: Your app must maintain a reasonable volume of API requests. Apps with a low or nonexistent volume of API, webhook, or CRM extension calls in the 30 days prior to applying won’t be evaluated.
  • Good standing: Your app must not have applied for and failed to achieve certification or have triggered any unresolved support escalations in the last six months. It must be in compliance with all applicable terms.

Evaluation criteria 

Technical quality 

  • Your app is limited to 100 requests every 10 seconds, and requests resulting in an error response shouldn’t exceed 5% of your total daily requests. Learn more about rate limits.
  • The majority of your app’s API requests must not come from your own connected account (i.e. you can’t be your own largest consumer of API calls).
  • Your app can only be associated with a single HubSpot App ID. Apps using multiple App IDs to circumvent API rate limits won’t be certified.
  • Your app must not request scopes that aren’t used or needed. If your requested scopes don’t mirror the capabilities or API traffic for your app, it won’t be certified. 
  • Webhooks sent to your app from HubSpot shouldn’t result in 500 or 503 errors. If this is happening, it might mean that your server can’t handle the volume of requests and may be causing your app to lose customer data.
  • Any errors around hitting concurrency limits—meaning your app is potentially missing webhook messages because of the Event throttling limit in your app settings—would prevent certification. Increasing that limit, which might mean increasing the capacity of your system, should solve this problem.
  • Your app must be built using the latest stable versions of our APIs.

Supporting documentation

  • Supporting documentation for your app must exist on a live, publicly available URL (no paywalls or sign-in required) and adhere to current accessibility, privacy, and GDPR standards.
  • It must be up-to-date, and consistent with the most recent release of the app
  • Your  app’s “Setup documentation URL” must be up-to-date. This URL must not be a link to your homepage—it must contain a subdomain and send users directly to the page hosting documentation for your app.
  • Supporting documentation must clearly describe:
    • What the app does
    • How to install the app
    • How to configure the app once it’s installed
    • How to use the app, including both manual and automated interactions
    • How to uninstall the app, including information about how uninstalling might affect users’ HubSpot accounts and data
  • Images should be used throughout the documentation. Any images containing screenshots of HubSpot’s UI should be up-to-date and consistent with our design system
  • The use of videos is also recommended, but not required. Videos should be updated regularly and reflect the current version of your app.

User experience 

  • Your app should demonstrate usability best practices. Installation and use shouldn’t cause confusion or frustration for HubSpot customers or otherwise negatively impact the core HubSpot user experience.
  • Your app must not use Chrome extensions or similar means to inject capabilities or components into HubSpot’s UI. Officially supported UI extensions (like CRM and workflow extensions) provide a more consistent user experience for customers.
  • App setup shouldn’t require users to manually create or trigger webhooks. You should leverage workflow extensions instead. 
  • Asking users to copy and paste HubSpot OAuth authorization codes or account API keys is prohibited. Not only does this add friction to the setup process, it’s a security liability.

Frictionless sign-up 

  • Your app listing must contain clear and accurate pricing information, including an active, up-to-date link to your pricing page.
    • Some App Partners without existing pricing pages or free trials have created “HubSpot Plans,” offering customers transparent pricing, touchless sign-up, and other benefits.

Feedback examples 

Below are a few examples of feedback we share with developers. Depending on the scale, some of these issues could prevent an app from being certified. Please read through them and make appropriate changes to your app before applying for certification.

  • Your app is generating errors around trying to update contacts using an undefined email address, which won’t work with the endpoint. Apps should skip these requests if the record doesn’t have an email address.
  • Your app is generating errors because of expired OAuth tokens. Check the expiration time of the token instead. If you start seeing 401 errors for 100% of requests and are unable to refresh the access token, consider the app uninstalled and stop making any requests for the account until a user re-auths the integration. 
  • Your app is generating 403 errors from trying to use the Contact Lists API with Marketing Hub Free accounts, which don’t have access to contact lists. If an app repeatedly gets 403 errors for not having contacts-lists-access, they should stop making calls to get lists from that account.
  • Your app is hitting endpoints without numeric IDs where one is required—these calls will always fail. Because they don’t work, requests without numeric IDs will be skipped.
  • Your app is pulling many contacts one at a time instead of pulling them in batches. Performance is best when contacts requests are made in batches of 100 or less. If possible, you should use batch endpoints instead. Regardless of method, requests should never exceed 1,000 contacts per call.
  • Your app is using both the “create contact” and “create or update contact” endpoints, resulting in duplicate contact errors. Avoid duplicate contact errors by using the “create or update” endpoint exclusively, instead of switching back and forth.
  • Your app is getting lots of errors for CRM extension fetch requests, resulting in 429 or 400 errors. This can cause the HubSpot user to see an error for their app when viewing the records in HubSpot.
  • HubSpot customers are used to a “try before you buy” experience when purchasing our products and services. For this reason, apps should aim to provide a free trial or freemium sign-up experience.


Review, feedback, and approval

The evaluation process will take no more than 60 days. Should your app successfully complete evaluation, a “Certified” icon will be visible to customers using the App Marketplace. Your app will also appear when users use the “HubSpot Certified” filter. After an initial 12-month period, you may be asked to re-certify your app if it falls out of certification compliance.

Should your app not successfully complete the evaluation, don’t worry—you can reapply in six months. 

As stated in the App Marketplace Terms, we reserve the right to un-publish your app listing at any time. If your app falls out of compliance with the listed requirements for certification at any time, we may initiate a recertification process.


Rewards for Certified App Partners

In addition to “Listed” Partner Rewards, Certified App Partners Receive:
  • Additional Visibility in the HubSpot App Marketplace
    • Inclusion in “Certified Partner” Searches
    • Eligible for inclusion in Curated App Marketplace Collections
  • Certified App Partner Badge, which appears on your marketplace listing
  • Priority Access to our Partner Management Team
  • Priority Invitations to Partner Days, Founder Days, and more
  • Eligible for Priority Access to new HubSpot Alpha/Beta APIs