Barcode scanning
for web apps

STRICH is a JavaScript library for real-time, multi-format barcode scanning directly in the web browser.

Try free demo Start free 30-day trial
Made with ❤️ in Switzerland
STRICH is German for stroke: [ʃtrɪç]

JavaScript barcode scanner

Scan barcodes quickly and reliably in your web app — no native app required! See how STRICH compares to ZXing and QuaggaJS.

Simple, transparent pricing

No large up-front commitment, unlimited devices. Cancel anytime. Free 30-day trial.

Built for developers

Available on NPM or CDNs with zero dependencies. Tested with all popular web frameworks. Great documentation – even JetBrains thinks so!.

What our customers are saying

From startups to large corporations, see what people have to say about STRICH.

Portrait of Cameron Myers

"We tried a number of different libraries for barcode scanning but always had compatibility issues. With STRICH we got fast, reliable scanning with no issues. Integration was easy, and we were up and running in production in a day (thanks to some great documentation). We couldn't recommend it more!"

Cameron Myers
Web Developer @ Brooklyn Public Library
Portrait of Keshav Bantwal

"We tried a few libraries but accuracy was hit-or-miss. STRICH was a great solution with flexible payment options that allowed us to integrate easily with great SDK documentation and amazing support."

Keshav Bantwal
SW Engineer @ Orange Health Labs (YC 20)
Portrait of Jukka Aittokallio

"After struggling with other libraries we settled on STRICH. It excels reading barcodes in conditions that the other libraries simply cannot get a reading."

Jukka Aittokallio
Senior SW Eng @ Reaktor
Portrait of Dinesh Kumar

"I migrated an existing project from Dynamsoft to STRICH - it was painless and the user experience was vastly superior. The library was painless to integrate, the SDK is well thought out, and the performance excellent."

Dinesh Kumar
CTO @ Lumanorth
Portrait of Dominik Schilling

"We tried a lot of other libraries but none was as good right from the start as STRICH. Thanks to the detailed documentation it was super easy to integrate the library into an existing ticket scanner web app."

Dominik Schilling
Web Engineer @ required
Portrait of Jaakko Mustalahti

"STRICH is probably the most versatile barcode reader on the market, and it takes care of all the heavy lifting in scanning. The implementation is super easy and fast accompanied with thorough documentation - the DX is great."

Jaakko Mustalahti
CTO @ Augment
Portrait of Alejandra Orrego Tabares

"STRICH is an easy, friendly and quick solution to implement."

Alejandra Urrego Tabares
Product manager @
Portrait of Aurelien Wolfert

"Looking for a barcode scanner for a web app? STRICH is the one for you. STRICH is a high-performance SDK, affordable and really easy to integrate."

Aurélien Wolfert
Creator of iOS app ClassBook
Portrait of Marc Paul

"STRICH, in combination with the Schedule 2 narcotics tracking software, is significantly improving the efficiency and accuracy of Emergency Medical Services throughout the United States."

Marc Paul
CEO @ Schedule2.IT
Portrait of Madhur Ramani

"STRICH has enabled us to quickly add a reliable and good-looking barcode scan functionality to our app without investing development efforts into building one ourselves. The excellent support offered to us has also been a big factor in us selecting the SDK over others."

Madhur Ramani
Founder @ Peakscale
Portrait of Matthias Schmid

"STRICH is a professional barcode scanning solution for web apps that outperforms comparable libraries by a wide margin."

Matthias Schmid
Founder @ Smantry

Why barcode scanning in web apps?

Moving your scanning workflows to web apps offers unique advantages over native apps.

No App Store required

No need to worry about App Stores and the headaches they bring. Host your web app anywhere you like, without platform risk.

Easy distribution

Distribute your app by sharing a link or a QR code. Web apps are always up-to-date.

Decrease development costs

Write your app once for the web instead of relying on expensive iOS/Android development. Avoid duplicating efforts and invest in a single code base instead.

Counter app fatigue

Don't force users to install apps they seldom need. App fatigue is real and it is unlikely you need a native app, especially for business apps.

Native-like experience

Progressive Web Apps (PWA) allow installing a web app on the user's home screen, increasing engagement and retention while offering advanced capabilities like offline operation and push notifications.

Not convinced? See how companies like Brooklyn Public Library, Swiss Railways and Bold use STRICH for their scanning processes.

Built for the web

Built for the web

STRICH is built from the ground up using modern web technology.


STRICH leverages modern JavaScript and web standards such as WebGL and WebAssembly for powerful image processing.

Broad compatibility

Works in all major browsers on Android and iOS, on both high-end and budget devices. Sample code available for Angular, SvelteKit, React, Vue and Vanilla JS.


Available on NPM with zero third-party dependencies. Single JavaScript file with TypeScript bindings and embedded WASM.

Continuously developed

Tracks emerging web standards so you don't have to. We are always working on optimizing the scanning experience.


1D and 2D Barcode Scanning

STRICH supports a wide range of 1D and 2D barcodes, and we are always working on more. Check the list of supported barcode types.

1D symbologies

Code 128, EAN, UPC, Code 39, Code 93, ITF, Databar, Codabar.

2D symbologies

QR Code, Data Matrix, Aztec Code and PDF417. Scan US driver’s licenses and more with PDF417 support!

On-device barcode detection

All image processing happens on the device in real-time by leveraging the power of modern web technologies.

Built-in scanning UI

Comes with a proven, built-in UI, so you don't have to build one yourself. Includes common components such as targeting overlay, camera selector, flashlight, tap-to-focus, etc.

Challenging codes

Challenging codes

Real-life barcodes are often difficult to read. STRICH uses advanced image processing to improve read rates over simpler solutions.

Faded or damaged prints

Faded ink and damaged bars make barcodes difficult to read.

Uneven illumination

Uneven illumination, low light and reflections can be challenging.

Inverted codes

STRICH fully supports reading inverted codes (light print on dark background) for all types.

ZXing and QuaggaJS

ZXing and QuaggaJS often have issues reading more challenging codes. See how STRICH compares to free alternatives.

STRICH is ready for Enterprise

Ready for the Enterprise

STRICH has Enterprise-friendly capabilities to support your business.

Supports major enterprise platforms

Integrates into popular Enterprise environments such as Salesforce (Lightning Web Components), SAP (Fiori), OutSystems and others.

Learn how Groz-Beckert, the world's leading provider of industrial machining needles, uses STRICH in their SAP Fiori environment.

Simple pricing

We bill you a fixed, yearly rate which does not depend on the number of scans or devices. We accept purchase orders, and support credit cards or wire transfer.

Customizable branding

Remove STRICH logo from scanning UI and replace it with your own to make your scanning app fully yours with our custom branding add-on.

Secure and compliant

Comply with strict IT policies, deploy to isolated environments, or ensure SOC2 compliance with our fully offline add-on – no data ever leaves the device.


Prices do not include VAT or sales tax. Please check our reseller's page for information on applicable taxes.

$ 99/mo
  • Up to 10k scans/month
  • Unlimited devices
  • Unlimited applications
  • Free updates
  • All supported 1D & 2D symbologies
  • Web-based analytics
$ 249/mo
  • Everything in BASIC
  • Up to 100k scans/month
  • Email support
  • Everything in PROFESSIONAL
  • Unlimited scans and devices
  • Custom branding of scanner UI
  • Fully offline (no network requests)
  • Annual billing and additional payment options
  • Priority Support
Discounts for startups and registered NGOs and charities available, inquire for details.

Frequently Asked Questions

What is STRICH?

STRICH is a JavaScript library or SDK (software development kit) which enables mobile web apps to scan 1D/2D barcodes using the smartphone's camera.

What can I build with STRICH?

STRICH allows you to move your scanning workflows to web apps. No need for expensive, dedicated hardware scanners or hard to manage native apps.

What happens if I exceed the scan limit of my plan?

If you exceed the limit for two consecutive months, we will gently nudge you towards a higher subscription plan. We will not reject scans. You will have enough time to make a decision.

Do I get free updates?

STRICH is distributed in a subscription model. You are always entitled to the latest version, and all features in it.

Does STRICH support Angular/Vue/React/SvelteKit?

STRICH relies only on browser capabilities and has zero third-party dependencies, making it easy to integrate into existing apps and inherently compatible with all web frameworks.

Can STRICH read my barcodes?

STRICH supports most common barcode types. To make sure STRICH works for you, just go ahead and try the free demo app.

Why should I pay when there are free alternatives?

If a free alternative like ZXing or QuaggaJS works for you, then you may not need STRICH. If you prefer a maintained, professionally supported and high-performing scanning solution, STRICH might be the answer. See how STRICH compares to free alternatives.

Still have questions? Head over to the full FAQ.

Start your free 30-day trial today

Get started integrating STRICH into your web app! Or launch our free demo and convince yourself that STRICH meets your needs.

Launch Demo App Start free trial