BTT Clipboard Manager doesn’t capture copied Figma components

Describe the bug

When I copy a component in Figma, nothing appears in BTT’s Clipboard Manager.

BTT’s Clipboard Manager normally lets me inspect all pasteboard types for a clipboard item via the dropdown. However, in this case, no clipboard item is created at all.

Pasteboard Viewer does show that Figma writes data to the pasteboard, including:

  • public.html
  • org.chromium.internal-source-rfh-token
  • org.chromium.source-url

So it seems BTT may not be detecting/capturing this Figma clipboard change, even though pasteboard data exists.

  • Device: MacBook Pro (14-inch, 2021)
  • macOS: 26.4.1 (25E253)
  • BTT Version: 6.440 (2026042402)
  • Alpha: 0 update(s) behind latest Alpha version 6.440 (2026042402).
  • Regular: Installed version is ahead of latest Regular version 6.286.

could you post the full list of item identifiers written by figma? maybe it is marked as internal, then BTT ignores it by default. Or are these three the full list?

I checked using NSPasteboard directly from Terminal.

Here’s the command I ran after copying the Figma component/frame:

cat > /tmp/list-pasteboard-types-with-sizes.swift <<'SWIFT'
import AppKit

let pb = NSPasteboard.general

print("changeCount:", pb.changeCount)
print("numberOfItems:", pb.pasteboardItems?.count ?? 0)
print("")

guard let items = pb.pasteboardItems else {
    print("No pasteboard items.")
    exit(0)
}

for (i, item) in items.enumerated() {
    print("Item \(i):")
    for type in item.types {
        let data = item.data(forType: type)
        let size = data?.count ?? 0
        print("  - \(type.rawValue)  (\(size) bytes)")
    }
}
SWIFT

swift /tmp/list-pasteboard-types-with-sizes.swift

Output:

changeCount: 215
numberOfItems: 1

Item 0:
  - public.html  (47621 bytes)
  - org.chromium.internal.source-rfh-token  (24 bytes)
  - org.chromium.source-url  (120 bytes)

So it looks like Figma writes one pasteboard item with three identifiers. One of them is Chromium-internal, but the same item also includes a sizeable public.html payload.

@Andreas_Hegenberg did I understand your message correctly? Was there something else you needed from me?

Can you check with 6.455? (uploading) I think the issue is that figma copies some HTML that appears valid but none of the system frameworks can render, which is why BTT thought it was empty and ignored it. This should now be resolved - it however will not render in BTT and instead show the raw HTML.

I confirm it works as expected now in v6.455 – thanks Andreas!