Skip to main content
INTEGRATION

DineRoute + Seamless.

Send your Meta, Google and TikTok ads to a page that surfaces your Seamless listing alongside Grubhub — and capture the NYC diners who still order on the second brand.

Seamless logo
NYC's original food-ordering brand

Same fulfillment as Grubhub · Manhattan & Brooklyn

WHAT DINEROUTE DOES FOR SEAMLESS

If you run a NYC restaurant, Seamless is half your delivery volume.

Grubhub acquired Seamless in 2013, merged the backends, and let both brands live on. The store IDs are identical, the fulfillment is identical, the kitchen ticket is identical — but in NYC, Seamless still has stronger brand recognition than Grubhub. Order in Brooklyn or Manhattan and the diner is more likely to say "I'll Seamless it" than "I'll Grubhub it." Both apps are on the same home screen for a reason.

Most restaurants run their Meta ads to Grubhub URLs and miss Seamless entirely. DineRoute resolves your Grubhub URL once and builds the matching Seamless URL automatically. Both surface on your branded smart link. The diner picks the brand they know.

On every Seamless click — separately from Grubhub clicks — we fire a real conversion event back to Meta, Google Ads, GA4 and TikTok. You finally see what your Seamless-attributable CPA is. NYC restaurants on DineRoute routinely discover Seamless outperforms Grubhub by 20–30% on Meta CPA because Seamless-loyal diners are higher-intent.

URL RESOLUTION (OWNERSHIP MAP)

How we resolve your Seamless restaurant URLs.

Seamless URLs are derived from the matching Grubhub restaurant ID. We resolve Grubhub via Google's Places API, parse the restaurant ID, and construct the Seamless URL from the same ID.

  1. 1 You paste your restaurant URL into DineRoute
  2. 2 We fetch your Google Business Profile and extract the Grubhub `food_ordering` link
  3. 3 We parse the Grubhub restaurant ID from the URL
  4. 4 We construct the matching Seamless URL using the same ID — automatic ownership-map sibling

If your restaurant is not on Grubhub, the Seamless button stays hidden until you list. Seamless cannot exist as a separate listing — it is always derived from Grubhub.

API sourceGoogle Places (Grubhub)
Parent platformgrubhub.com/restaurant/
Seamless URL patternseamless.com/menu/
Ownership mapGrubhub → Seamless
Refresh cadenceEvery 24h
Hide if no parentYes
HOW TRACKING WORKS

What fires when a diner clicks "Order on Seamless."

Same tracking architecture as Grubhub — but with `platform=seamless` as the discriminator so attribution is separate.

  1. 01

    Diner taps "Order on Seamless" on your DineRoute page

    Server-rendered anchor with the derived Seamless URL pre-baked. A 300ms intercept fires tracking before the handoff.

  2. 02

    Browser pixels fire with a shared `event_id`

    Meta Pixel, Google Ads gtag, GA4 and TikTok Pixel all fire `platform_click` with `platform=seamless` and a UUID `event_id`. This is a different event from `platform=grubhub` even though they share the underlying restaurant ID.

  3. 03

    Server-side conversion mirrors fire with the same `event_id`

    Meta CAPI, Google sCAPI, GA4 Measurement Protocol and TikTok Events API receive the matching event. Browser + server deduplicated. `fbclid`, `gclid`, `gbraid`, `wbraid` forwarded.

  4. 04

    Diner lands in Seamless with UTMs in the URL hash

    `utm_source`, `utm_campaign`, `utm_medium` and the original `fbclid`/`gclid` appended as hash params. Seamless behaves like Grubhub — strips query params but preserves hash.

IN YOUR AD REPORTS

What actually changes in Meta, Google and TikTok.

Meta Ads Manager

"Seamless click" as a separate conversion

Optimize toward `platform_click` (Seamless) alongside Grubhub. NYC restaurants routinely find Seamless wins by 20–30% on Meta CPA because Seamless-loyal diners convert at a higher rate.

Google Ads

"Seamless conversion" with full click-ID capture

Conversion tag fires with `conversion_label=seamless`. iOS click IDs captured. Useful for separating Seamless and Grubhub bidding strategies.

GA4 + Looker Studio

`platform_click` Seamless vs Grubhub split

One report shows the sibling ratio per campaign per location. NYC restaurants almost always see Seamless contribute 50–65% of the combined Grubhub-network volume.

SUPPORTED SEAMLESS FEATURES

Every Seamless feature, preserved.

DineRoute is the smart link in front of your Seamless restaurant — the diner lands in the standard Seamless experience and every native feature still works.

Pickup + delivery

Both order types preserved on your Seamless restaurant page after the diner lands.

Grubhub+ eligibility

Grubhub+ works on Seamless the same way it works on Grubhub — same parent program.

Group ordering

Seamless group ordering works after the diner lands — standard Grubhub-network flow.

Scheduled delivery

Standard Seamless scheduled-delivery flow, untouched by DineRoute.

NYC dominance

Seamless is the dominant brand in Manhattan and Brooklyn — most NYC diners still call it 'ordering Seamless.'

Grubhub restaurant ID derived

One Grubhub resolve gives you the matching Seamless URL automatically.

SIDE-BY-SIDE

DineRoute → Seamless vs ads sent directly to Seamless.

What sending Meta ads through DineRoute changes versus pointing them at your Seamless restaurant page directly.

CapabilityDineRoute → SeamlessMeta ad → Seamless directly
Branded landing page
Multi-platform routing
Meta Pixel attribution
Meta Conversions API (server-side)
Custom domain
Per-location analytics
Conversion event back to Meta/Google
UTM + click ID forwarded into Seamless Partial — Seamless strips query params
GA4 + TikTok events fired on click
Grubhub sibling listing surfaced
QUESTIONS

Seamless + DineRoute questions.

How long does it take to set up DineRoute for Seamless?

About 60 seconds. Because Seamless is owned by Grubhub and shares store IDs, we resolve Grubhub via Google Places and automatically construct the matching Seamless URL.

What Seamless URL does DineRoute use?

Seamless URLs are derived from your Grubhub restaurant ID. Grubhub owns Seamless and the two share IDs one-to-one. We resolve Grubhub via Google's Places API, then build the Seamless URL from the same ID — no scraping, no separate Seamless API.

Why do I need Seamless if I already have Grubhub?

NYC. Seamless predates Grubhub in NYC by a decade and still has stronger brand recognition with Manhattan and Brooklyn diners — many of whom still call it 'ordering Seamless' regardless of the actual app. Surfacing both consistently lifts orders 10–25% from the same ad spend in NYC at no extra cost.

What if I open a new location on Grubhub?

You add the location to Grubhub — Seamless inherits automatically because they share store IDs. DineRoute re-resolves every 24 hours and the matching Seamless URL is generated.

Are diners refunded through Seamless or through me?

Seamless (and behind it Grubhub) handles all refunds and customer service exactly as today. DineRoute is just the smart link in front — we never touch the order or payment.

Do diners notice the redirect to Seamless?

No. The handoff is 300ms and lands them in the Seamless app or web directly. The whole flow feels native on mobile.

What if my Seamless URL changes?

Seamless URLs are derived from Grubhub restaurant IDs, which are stable. We re-resolve every 24 hours via the Places API and DineRoute updates automatically if anything drifts.

What if my restaurant isn't on Seamless / Grubhub?

DineRoute hides the Seamless button and routes diners to your other platforms. Once you list on Grubhub, you get Seamless automatically and the button surfaces on the next resolve.

GET STARTED

NYC orders Seamless. Make sure your ads do too.

60 seconds to publish. Grubhub and Seamless surfaced from one branded smart link, separately attributed.

No credit card. 14-day trial. Cancel any time.