Skip to content
Language: EN

Writing succeeds but the action does not trigger

The content is right and the record type is wrong for what you wanted. Reading it back shows exactly the text you intended, which is why this survives verification: a check that compares content and ignores type passes a tag that will never act.

Type decides the action

A record carries a payload and a declaration of what that payload is. The phone reads the declaration and decides what to do.

Identical characters under two different declarations produce two different outcomes. A web address record opens something. The same characters in a text record are displayed.

So a tag can hold precisely the right content and do precisely nothing, and neither the content nor the tag is at fault.

Why verification misses it

Verification usually compares what was read against what was intended, character for character. This tag passes that comparison.

The mismatch is one level up, in a field the comparison never looks at, which is why this fault reaches deployment more often than louder ones.

It also passes a casual test, because someone checking a tag reads the screen and sees the right thing.

The failure appears only when a visitor taps and expects something to happen.

The usual mismatches

A web address written as text, which is the commonest by a distance. It reads correctly and opens nothing.

A phone number or an email written as text rather than as the record type for that action, so the phone displays it instead of offering to dial or compose.

A record intended to launch an application, written as an address instead of as the record type built for it.

A record type with no declaration at all, which happens with software that writes raw bytes without the surrounding structure.

Checking type as well as content

Read the tag with a tool that reports record types, and confirm the type as well as the text.

Add the type to whatever you verify against in production. A batch check that compares content only will pass an entire run of tags that do nothing.

Test the outcome rather than the content. Tap the tag and watch what happens, which is the only check that reflects a visitor's experience.

And test on a device that is not the one you wrote with, since the writing tool may be interpreting its own output generously.

Frequently asked questions

The text is correct, so why does nothing happen?

Because the record type declares what the payload is, and the phone acts on that declaration. Correct text under the wrong type does nothing.

Which record type opens a web page?

The web address record type, which stores the scheme as a single byte and identifies the payload as an address.

Can I convert a text record to a URL record?

Not by editing, since the type is part of the record. Rewrite the tag choosing the right type.

Should my verification check the type?

Yes. A content only comparison passes tags that will never act, which is exactly the failure this describes.