Barcode scanner

Barcode scanner

Reads Code 128/39/93, Codabar, EAN-13/8, UPC-A/E and ITF. QR, PDF417 and Data Matrix are outside this tool’s scope. In automatic format mode UPC-A may be reported as EAN-13 with a leading zero; choose a specific format when that distinction matters.

Actual Code 128 example value: TANI-2026-12345. Its generated PNG follows the same checks and decoding as an uploaded photo. Press Read to verify the result.

Read with camera

Camera permission is requested only after Start. No microphone is used. Include the full bars and quiet space at both ends, and avoid glare and blur. The camera stops after the first result, two minutes, hiding the tab or leaving the page.

Ready

This tab’s results (0/30)

Comments & questions

Barcode scanner

This tool decodes actual 1D bar patterns from image files or camera frames. It first tries the browser’s supported detector, then a local ZXing decoder with horizontal, vertical and inverted attempts. It differs from barcode generation and QR-only scanning in direction and supported formats.

Key features

  • Actual 1D bar-pattern decoding from photos
  • Explicit camera start and stop
  • Native capability checks and local ZXing fallback
  • Horizontal, vertical and inverted decoding attempts
  • Literal values with leading zeros and punctuation preserved
  • 30-result in-tab history and TXT download

How to use

  1. Choose a photo or generate the real Code 128 example.
  2. Select all supported formats or a known symbology.
  3. Press Read, or start and allow camera access.
  4. Inspect the reported format and copy the literal content.
  5. Optionally download and clear this tab’s TXT history.

Use cases

  • Read an EAN or UPC printed on packaging
  • Check the printed output of a Code 128 label
  • Decode a photo without granting camera access
  • Collect literal values from several labels

Frequently asked questions

Does this read QR codes?

This tool reads Code 128/39/93, Codabar, EAN-13/8, UPC-A/E and ITF. Use the existing QR scanner for QR codes. Barcode generation performs the reverse operation: creating bars from a value.

What if BarcodeDetector is unavailable?

The local ZXing JavaScript decoder reads the same pixels. It also runs when native formats are unavailable or the native detector finds nothing. Formats outside the stated 1D allowlist are not accepted.

Why does my UPC start with an extra zero?

UPC-A and EAN-13 with a leading zero can represent the same bars. Automatic mode reports the decoder’s actual format and preserves the returned text. Choose UPC-A or EAN-13 explicitly when that distinction matters.

Will it read every barcode in one photo?

It returns the first decoded barcode. Take a closer photo or crop another code to read it separately. Decode images are reduced to 1600 pixels on a side and 1.5 million pixels, so tiny bars may lose detail.

When is the camera released?

It stops after one result, Stop, two minutes, hiding the tab, leaving the page or the input track ending. A stream granted after cancellation is also closed. The browser’s permission dialog may still need to be dismissed manually.

Does it identify products, prices or authenticity?

No. It reads only the encoded literal value. It does not call a lookup or authenticity service and never opens a decoded URL automatically. History stays in tab memory and any TXT file you explicitly download.

Privacy

Images, frames and decoded values are processed in the browser without uploading or automatic saving. The camera starts only when requested and no microphone is used. Up to 30 distinct results remain in this tab’s memory; only an explicit TXT download saves them.

References

Related Tools

Barcode GeneratorQR Code ScannerImage CropImage Super ResolutionHDR Exposure MergerPhoto Colorization LabPanorama StitcherSheet Nesting PlannerEdit Decision WorkbenchTeleprompter StudioBilingual Video Study PlayerChord Progression LabMusic Score EditorSubtitle WorkbenchSpatial Audio DesignerMusic Chord Candidate AnalyzerMIDI Piano Roll EditorSample Instrument BuilderImpulse Response LabAudio Waveform EditorDTMF Signal LabSpectrogram Sound PainterAudio Spectrum AnalyzerAudio DenoiserAudio Source SeparatorSound Effect SynthesizerMultitrack Audio MixerAudio Transient SlicerAudio Loop Seam FinderAudio Loudness AuditorAudio Pitch Tempo StudioStereo Anaglyph MakerPhoto Mosaic MakerImage Frequency SpectrumSimilar Photo FinderLenticular InterlacerPBR Texture Map LabPanorama Tour BuilderImage Calibration TargetsImage Steganography LabVector Morph EditorDocument Perspective CorrectorImage Inpainting StudioKnitting Chart EditorSVG Boolean WorkbenchSVG Path EditorSeamless Pattern MakerScreenprint Separation StudioQuilt Layout PlannerPerspective Mockup StudioLow Poly Mesh MakerFont Subset BuilderFocus Stacking LabImage Depth EstimatorCross Stitch Chart MakerAnimation Timeline EditorPixel Paint StudioImage Difference HeatmapImage Quality LabID photo makerVideo to GIFVideo Chroma KeyerVideo StabilizerVideo Reframe StudioStop Motion StudioVideo Timecode ConformerVideo Quality ComparatorHLS and DASH Manifest ValidatorVideo Speed Ramp EditorVideo Container InspectorVideo Storyboard MakerVideo Privacy MaskerRotoscope Mask EditorVideo Motion TrackerVideo Frame InterpolatorAudio Description EditorVideo Audio Sync LabVideo TrimmerGIF Frame ExtractorSVG to PNG / JPEGImage to SVG VectorPixel Art ConverterCircle Profile CropPhoto and Polaroid FrameRound Image CornersJPEG EXIF Viewer and RemoverImage Color Vision SimulatorImage to ASCII ArtPhoto CollageInstagram 9-Tile SplitterLong Image SplitterRotate and Flip ImagesImage FiltersMeme GeneratorScreenshot BeautifierQR Code GeneratorImage CompressorImage ResizeImage ConverterFavicon GeneratorYouTube Thumbnail ExtractorHEIC to JPGSignature & Stamp MakerImage WatermarkGIF MakerImage Color PickerImage to Text (OCR)Merge ImagesPhoto Blur & MosaicMP4 to MP3 ConverterVideo CompressorBackground Remover
Explore all Image/Media tools →Text/Convert →Life/Fun →Dev Tools →