---
title: "Augmented Reality Development & WebAR"
canonical: https://wavect.io/services/augmented-reality-development/
language: en
description: "Build AR experiences around real placement, device support and useful fallbacks. Wavect scopes browser and mobile AR, asset preparation, testing and handover."
image: "https://wavect.io/img/general/bak/open_graph_preview.jpg"
---

AR & WebAR

# Augmented reality that helps people see, understand and choose.

Help people see a product, instruction or story in the space around them. We build augmented-reality experiences around a useful action, test placement and tracking on agreed devices, and provide a route for people who cannot use AR.

THE ENGAGEMENT

## A complete journey from entry to recovery.

1. **Choose the entry** Define the audience, devices and route into AR.
2. **Prove placement** Test scale, interaction and recovery in the intended setting.
3. **Ship the usable path** Deliver assets, app behavior, fallback and operating notes.

DIRECT ANSWER

Augmented reality development places interactive digital content in a camera view of the real world. Wavect scopes phone and browser experiences with defined placement behavior, permissions, supported devices and a useful alternative without AR.

Best for

- Product previews or visitor experiences with a clear real-world context
- Teams adding a bounded AR interaction to a website or mobile app

Consider another approach

- A product viewer that only needs rotation and variant selection
- A headset experience with spatial hands or controllers

## Choose the route before building the scene

Start with where people discover the experience: a product page, QR code, NFC tag or an installed app. Compare a simple platform viewer, an interactive browser experience and a native feature against the required actions. [WebXR has browser and permission requirements](https://developer.mozilla.org/en-US/docs/Web/API/WebXR_Device_API/Permissions_and_security); WebAR does not behave identically everywhere. For an existing app, [Mobile Apps](/services/mobile-apps/) owns the surrounding navigation, account and release work.

## Make placement understandable and recoverable

Define the surface or image target, expected object dimensions, repositioning and instructions when tracking becomes unreliable. Plain or reflective surroundings need an explicit trial in the intended setting; [ARCore documents limitations in surface detection](https://developers.google.com/ar/develop/fundamentals). Decide whether to hide, freeze or re-place content when tracking is lost. Persistent placement across visits and shared placement across devices are separate requirements, not assumptions attached to an AR label.

## Keep the asset and the product information aligned

Agree model scale, orientation, material appearance, download size and the number of objects visible together. Link the displayed model to the correct product or content version. [3D Modelling](/services/3d-modelling/) covers asset creation and preparation. If camera placement adds little, an [interactive 3D viewer](/services/interactive-3d-development/) can support inspection and configuration directly. Product dimensions should remain readable as text; visual placement is an aid to understanding the object.

## Illustrative acceptance: place a product, then return to it

A visitor opens a lamp preview from its product page. On an agreed device, the lamp appears at the specified scale and can be placed again. After the camera is interrupted, the interface explains how to resume rather than leaving an unexplained floating object. Denied camera access or unsupported AR leads to the model, dimensions and product information without a dead end. The selected lamp remains consistent throughout. This is a proposed acceptance exercise, not a customer result.

## Keep published entry points useful as content changes

An AR entry link can remain on a printed label after a campaign changes. Agree who can publish content, what needs approval and where visitors go when an item is retired. Prepare a previewable release that keeps the model, instructions and destination together, with a way to restore the previous version. Changing a QR destination should not silently send visitors to a different product.

## Test the full visit on the target devices

Acceptance names the phones, operating systems, browsers, lighting conditions and network assumptions to test. We cover permission denial, slow assets, interruptions and the return to the original page. Agree whether any images or spatial data are stored, and who owns hosting and updates. Handover includes source, approved assets, the device matrix, fallback behavior and instructions for replacing content without breaking placement.

## Questions before you start

### Does AR always require an app?

No. A browser or platform viewer may cover the intended interaction. We compare that route with an app when device features, offline behavior or deeper integration justify installation.

### Can one experience support every phone?

We agree a tested device and browser matrix. [Scene Viewer](https://developers.google.com/ar/develop/scene-viewer) and [Apple Quick Look](https://developer.apple.com/quick-look-gallery/) offer different platform routes. Unsupported combinations need an ordinary product or 3D view.

### Do we need finished 3D models before starting?

No. Bring the source material and usage rights you have. We assess whether existing models can be adapted or whether new assets are needed, with that work priced and accepted explicitly.

### Does this cover headset AR and mixed reality?

Headset passthrough, spatial input and room-scale sessions belong to [VR & XR Development](/services/vr-xr-development/). This page focuses on phone and browser journeys; the two can share approved assets.

### Can we start with a small pilot?

Yes. Choose one action, one representative asset and a defined device set. The pilot should resolve a specific question about usefulness, tracking or delivery before adding more content.

### When is AR a useful investment rather than a visual extra?

Use it when placing or viewing something in a real space helps a person decide or act. Test that task with intended users on available devices. Compare it with a standard image or viewer and include the fallback before funding a larger experience.

## Continue with the right scope

- [Headset VR and mixed reality](/services/vr-xr-development/)
- [Create and prepare the 3D assets](/services/3d-modelling/)
- [Interactive 3D without camera placement](/services/interactive-3d-development/)

## Structured Data

```json
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@id": "https://wavect.io/#organization",
      "@type": [
        "Organization",
        "ProfessionalService",
        "LocalBusiness"
      ],
      "employee": [
        {
          "@id": "https://wavect.io/team/kevin-riedl/#person",
          "@type": "Person",
          "jobTitle": "Managing Director",
          "name": "Kevin Riedl",
          "url": "https://wavect.io/team/kevin-riedl/",
          "worksFor": {
            "@id": "https://wavect.io/#organization",
            "@type": [
              "Organization",
              "ProfessionalService",
              "LocalBusiness"
            ]
          }
        },
        {
          "@id": "https://wavect.io/team/christof-jori/#person",
          "@type": "Person",
          "jobTitle": "Managing Director",
          "name": "Christof Jori",
          "url": "https://wavect.io/team/christof-jori/",
          "worksFor": {
            "@id": "https://wavect.io/#organization",
            "@type": [
              "Organization",
              "ProfessionalService",
              "LocalBusiness"
            ]
          }
        }
      ],
      "founder": [
        {
          "@id": "https://wavect.io/team/kevin-riedl/#person",
          "@type": "Person",
          "jobTitle": "Managing Director",
          "name": "Kevin Riedl",
          "url": "https://wavect.io/team/kevin-riedl/",
          "worksFor": {
            "@id": "https://wavect.io/#organization",
            "@type": [
              "Organization",
              "ProfessionalService",
              "LocalBusiness"
            ]
          }
        },
        {
          "@id": "https://wavect.io/team/christof-jori/#person",
          "@type": "Person",
          "jobTitle": "Managing Director",
          "name": "Christof Jori",
          "url": "https://wavect.io/team/christof-jori/",
          "worksFor": {
            "@id": "https://wavect.io/#organization",
            "@type": [
              "Organization",
              "ProfessionalService",
              "LocalBusiness"
            ]
          }
        }
      ],
      "legalRepresentative": [
        {
          "@id": "https://wavect.io/team/kevin-riedl/#person",
          "@type": "Person",
          "jobTitle": "Managing Director",
          "name": "Kevin Riedl",
          "url": "https://wavect.io/team/kevin-riedl/",
          "worksFor": {
            "@id": "https://wavect.io/#organization",
            "@type": [
              "Organization",
              "ProfessionalService",
              "LocalBusiness"
            ]
          }
        },
        {
          "@id": "https://wavect.io/team/christof-jori/#person",
          "@type": "Person",
          "jobTitle": "Managing Director",
          "name": "Christof Jori",
          "url": "https://wavect.io/team/christof-jori/",
          "worksFor": {
            "@id": "https://wavect.io/#organization",
            "@type": [
              "Organization",
              "ProfessionalService",
              "LocalBusiness"
            ]
          }
        }
      ],
      "name": "Wavect GmbH",
      "subjectOf": {
        "@id": "https://wavect.io/verified-claims.json#dataset",
        "@type": "Dataset",
        "creator": {
          "@id": "https://wavect.io/#organization",
          "@type": [
            "Organization",
            "ProfessionalService",
            "LocalBusiness"
          ]
        },
        "description": "A machine-readable registry of quantitative and qualitative claims published by Wavect, with review dates, localized page appearances and public third-party citations where available.",
        "inLanguage": "en",
        "isAccessibleForFree": true,
        "license": "https://creativecommons.org/licenses/by/4.0/",
        "name": "Wavect verified publication claims",
        "url": "https://wavect.io/verified-claims.json"
      },
      "url": "https://wavect.io/"
    },
    {
      "@id": "https://wavect.io/team/kevin-riedl/#person",
      "@type": "Person",
      "jobTitle": "Managing Director",
      "name": "Kevin Riedl",
      "sameAs": [
        "https://www.wikidata.org/wiki/Q139796365",
        "https://www.linkedin.com/in/wsdt",
        "https://github.com/wsdt"
      ],
      "url": "https://wavect.io/team/kevin-riedl/",
      "worksFor": {
        "@id": "https://wavect.io/#organization",
        "@type": [
          "Organization",
          "ProfessionalService",
          "LocalBusiness"
        ]
      }
    },
    {
      "@id": "https://wavect.io/team/christof-jori/#person",
      "@type": "Person",
      "jobTitle": "Managing Director",
      "name": "Christof Jori",
      "sameAs": [
        "https://www.wikidata.org/wiki/Q139796367",
        "https://www.linkedin.com/in/jocr77/",
        "https://github.com/jo-chris"
      ],
      "url": "https://wavect.io/team/christof-jori/",
      "worksFor": {
        "@id": "https://wavect.io/#organization",
        "@type": [
          "Organization",
          "ProfessionalService",
          "LocalBusiness"
        ]
      }
    },
    {
      "@id": "https://wavect.io/#website",
      "@type": "WebSite",
      "inLanguage": [
        "en",
        "de",
        "es",
        "zh"
      ],
      "name": "Wavect",
      "potentialAction": {
        "@type": "SearchAction",
        "query-input": "required name=search_term_string",
        "target": {
          "@type": "EntryPoint",
          "urlTemplate": "https://wavect.io/search/?q={search_term_string}"
        }
      },
      "publisher": {
        "@id": "https://wavect.io/#organization",
        "@type": [
          "Organization",
          "ProfessionalService",
          "LocalBusiness"
        ]
      },
      "url": "https://wavect.io/"
    }
  ]
}
```

```json
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@id": "https://wavect.io/services/augmented-reality-development/#service",
      "@type": "Service",
      "areaServed": [
        {
          "@type": "Country",
          "name": "Austria"
        },
        {
          "@type": "Place",
          "name": "Worldwide"
        }
      ],
      "category": "Games, XR & 3D",
      "dateModified": "2026-11-01",
      "description": "Build AR experiences around real placement, device support and useful fallbacks. Wavect scopes browser and mobile AR, asset preparation, testing and handover.",
      "name": "Augmented Reality Development & WebAR",
      "provider": {
        "@id": "https://wavect.io/#organization",
        "@type": [
          "Organization",
          "ProfessionalService",
          "LocalBusiness"
        ]
      },
      "serviceType": "Augmented Reality Development",
      "url": "https://wavect.io/services/augmented-reality-development/"
    },
    {
      "@type": "BreadcrumbList",
      "itemListElement": [
        {
          "@type": "ListItem",
          "item": "https://wavect.io/",
          "name": "Home",
          "position": 1
        },
        {
          "@type": "ListItem",
          "item": "https://wavect.io/services/overview/",
          "name": "Services",
          "position": 2
        },
        {
          "@type": "ListItem",
          "item": "https://wavect.io/services/overview/#games-xr-3d",
          "name": "Games, XR & 3D",
          "position": 3
        },
        {
          "@type": "ListItem",
          "item": "https://wavect.io/services/augmented-reality-development/",
          "name": "Augmented Reality Development",
          "position": 4
        }
      ]
    },
    {
      "@id": "https://wavect.io/services/augmented-reality-development/#webpage",
      "@type": "WebPage",
      "dateModified": "2026-11-01",
      "description": "Build AR experiences around real placement, device support and useful fallbacks. Wavect scopes browser and mobile AR, asset preparation, testing and handover.",
      "inLanguage": "en",
      "isPartOf": {
        "@id": "https://wavect.io/#website",
        "@type": "WebSite"
      },
      "mainEntity": {
        "@id": "https://wavect.io/services/augmented-reality-development/#service"
      },
      "name": "Augmented Reality Development & WebAR",
      "url": "https://wavect.io/services/augmented-reality-development/"
    }
  ]
}
```

```json
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "No. A browser or platform viewer may cover the intended interaction. We compare that route with an app when device features, offline behavior or deeper integration justify installation."
      },
      "name": "Does AR always require an app?"
    },
    {
      "@type": "Question",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "We agree a tested device and browser matrix. Scene Viewer and Apple Quick Look offer different platform routes. Unsupported combinations need an ordinary product or 3D view."
      },
      "name": "Can one experience support every phone?"
    },
    {
      "@type": "Question",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "No. Bring the source material and usage rights you have. We assess whether existing models can be adapted or whether new assets are needed, with that work priced and accepted explicitly."
      },
      "name": "Do we need finished 3D models before starting?"
    },
    {
      "@type": "Question",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Headset passthrough, spatial input and room-scale sessions belong to VR & XR Development. This page focuses on phone and browser journeys; the two can share approved assets."
      },
      "name": "Does this cover headset AR and mixed reality?"
    },
    {
      "@type": "Question",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Yes. Choose one action, one representative asset and a defined device set. The pilot should resolve a specific question about usefulness, tracking or delivery before adding more content."
      },
      "name": "Can we start with a small pilot?"
    },
    {
      "@type": "Question",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Use it when placing or viewing something in a real space helps a person decide or act. Test that task with intended users on available devices. Compare it with a standard image or viewer and include the fallback before funding a larger experience."
      },
      "name": "When is AR a useful investment rather than a visual extra?"
    }
  ],
  "speakable": {
    "@type": "SpeakableSpecification",
    "cssSelector": [
      ".faq-question",
      ".faq-answer"
    ]
  }
}
```
