A Telegram bot that drives real organic visits to your site

Graphref operates a pool of real devices. When you submit a job, those devices perform an actual Google search for your keyword, locate your domain in the results, and click through. Google registers it as genuine organic traffic — which you can verify in Search Console.

Job pipeline

From your command to a click in Google — every step in the process.

You send /run keyword domain

via Telegram bot

Job enqueued in Redis queue

10 credits deducted

Worker picks up and executes

run.py subprocess on real device

Google search performed

Finds your domain, clicks it

Bot notifies you with result

Appears in Google Search Console

Queue & workers

Jobs are stored in a Redis-backed queue (RQ). Workers continuously pull jobs in order and execute them. Multiple workers can run in parallel, which is why server load affects queue time.

queue jobs
position 3 of 14
timeout 30 min max
on timeout auto-refund

Auto-refund policy

Credits are refunded automatically for any job that doesn't complete successfully — network errors, invalid domain, worker interruption, or timeout. No manual request needed.

+10failed (non-zero exit)
+10stopped (worker restart)
+10canceled by user
+10timeout after 30 min

Job lifecycle

Every job moves through these states. The bot notifies you when a job leaves the active states.

job a3f9-bc12 · log
10:42:01queuedJob is waiting in the Redis queue. Position depends on server load.
10:42:08startedA worker has picked up the job and is executing the search + click process.
10:43:11finishedJob completed successfully. Visit will appear in Google Search Console.
failedExecution returned a non-zero exit code. 10 credits are automatically refunded.
stoppedWorker was interrupted mid-execution (e.g. server restart). Credits refunded.
canceledUser cancelled the job before it started. 10 credits refunded immediately.
failed / stopped / canceled → credits refunded automatically

State transitions

queuedstartedfinishedfailed /stoppedworker picks upexit 0exit ≠ 0 → refund/cancel → refund

All commands

Every command the bot supports, with real examples of what you send and what you get back.

/run <keyword> <domain>10 credits

Enqueues a new search job. Graphref searches for your keyword on Google and clicks your domain in the results.

/run best coffee grinder mycoffeeshop.com
✅ Job Queued! Keyword: best coffee grinder Domain: mycoffeeshop.com Credits remaining: 40 Job ID: a3f9-bc12 Track: /status a3f9-bc12
/status [job_id]Free

Returns the current state of a job. Omit job_id to check your most recent active job.

/status a3f9-bc12
🚀 Job Status Status: Running Keyword: best coffee grinder Domain: mycoffeeshop.com Queue position: 2 Job ID: a3f9-bc12
/jobs [n]Free

Lists your last N jobs (1–10) with their status, keyword, domain, and timestamps.

/jobs 5
Your last 5 jobs: 1. ✅ best coffee grinder → mycoffeeshop.com 2. ✅ coffee grinder reviews → mycoffeeshop.com 3. ❌ espresso machine → mycoffeeshop.com 4. ✅ pour over coffee → mycoffeeshop.com 5. ⏳ drip coffee maker → mycoffeeshop.com
/cancel [job_id]Refunds 10 credits

Cancels a queued job before it starts. Credits are refunded immediately. Cannot cancel a job that has already started.

/cancel a3f9-bc12
🛑 Job Cancelled Job a3f9-bc12 has been cancelled. 10 credits refunded. New balance: 50 credits
/queueFree

Shows current server load: how many jobs are queued globally and how many of yours are active.

/queue
📊 Queue Status Queue: jobs Total queued: 14 Your active jobs: 2
/creditsFree

Shows your current credit balance and how many /run calls you can make with remaining credits.

/credits
💳 Credit Balance Balance: 80 credits Runs remaining: 8 Need more? Use /buy
/buyFree

Displays available credit packages with PayPal checkout links. Credits are added instantly after payment.

/buy
Choose a package: [100 credits — $1.99] [500 credits — $8.99] [1000 credits — $15.99]
/referralFree

Generates your unique referral link. When someone signs up through your link and completes their first run, you earn 30 bonus credits.

/referral
🔗 Your referral link: t.me/graphrefbot?start=ref_a3f9bc Earn 30 credits for each person who runs their first job through your link.

Inside the worker

What actually happens between “worker picks up” and “job finished” — every step the real device takes.

Worker dequeues the job

An idle worker process polls the Redis queue and atomically pops the next job. The job transitions from queued → started and is locked so no other worker can claim it.

worker.dequeue() # job_id: a3f9-bc12 status → started

Real browser launches

The worker spawns run.py as a subprocess on a real device. A headless Chromium instance starts with a unique user-agent and viewport — indistinguishable from a normal desktop session.

subprocess.run(['python', 'run.py', '--keyword', 'best coffee grinder', '--domain', 'mycoffeeshop.com'])

Google search is performed

The browser navigates to google.com and types the keyword into the search box. The search is submitted and the SERP (Search Engine Results Page) loads fully before any action is taken.

navigate → google.com type → "best coffee grinder" wait → SERP fully loaded

Results scanned for your domain

The script iterates through organic result links, checking each href for a match to your domain. If the domain appears in the top results it proceeds; otherwise the job exits with a non-zero code and credits are refunded.

for result in serp.organic_results: if domain in result.url: target = result # found ✓ break

Domain link is clicked

The target link receives a real mouse-click event (not a direct navigation). The browser follows the redirect chain exactly as a human visitor would — including Google's click-tracking URL — then waits for the page to fully load before the job is marked finished.

target.click() # real mouse event # browser follows google redirect # lands on mycoffeeshop.com

How Graphref avoids low-quality traffic flags

Google's systems look for patterns that separate automated activity from genuine users. Graphref is built around passing every one of them.

Real browser fingerprint

A physical device runs a standard Chromium build with no automation flags. Canvas, WebGL, audio, and font fingerprints match a normal desktop browser — nothing headless-specific is exposed.

Click routed through Google

The click follows Google's /url?q= redirect chain before landing on your site. This is what Google's click-through measurement infrastructure expects to see — a direct navigation would register as referral traffic, not organic.

Unique IP per session

Each job runs from a distinct residential IP address. No repeated subnet patterns, no datacenter ranges. IP reputation is clean and geographically varied.

Human-paced timing

Keystrokes, mouse movements, and page interactions are paced with randomised delays. No sub-millisecond precision that would stand out in event timing analysis.

Dwell time, not bounce

The browser waits for the full page load and remains on the destination for a natural duration. Immediate exits are a strong signal of bot activity — Graphref never bounces.

No repetitive patterns

Jobs from different users are interleaved in the queue. No single keyword or domain is hit at a metronomic interval. Traffic variance mirrors organic user behaviour.

Ready to try it?

New accounts start with 50 free credits — no card required.

Open on Telegram