Traffic Generator – YouTube, Web, Etsy, Behance & more avatar

Traffic Generator – YouTube, Web, Etsy, Behance & more

Pricing

from $0.35 / 1,000 results

Go to Apify Store
Traffic Generator – YouTube, Web, Etsy, Behance & more

Traffic Generator – YouTube, Web, Etsy, Behance & more

Not sure your analytics, pages and load times hold up under real visits? Send test visits to sites, YouTube videos, Etsy shops or Behance pages you own and get one row per visit: status, analytics hits seen, Core Web Vitals and stress-test latency.

Pricing

from $0.35 / 1,000 results

Rating

0.0

(0)

Developer

Crawl Craft

Crawl Craft

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Categories

Security

Limited permissions

Share

Traffic Generator β€” visit results, analytics hits and load timings

Traffic Generator sends real visits to web pages, YouTube videos, Etsy shops and Behance profiles that you own or are allowed to test, and returns one data row per visit. Each row shows the HTTP status, whether a bot wall blocked the visit, load timings and Core Web Vitals, which analytics tags are on the page and which of them received a hit, time on page, scroll depth, pages clicked and the visitor used. Every response is structured JSON β€” ready to pass directly to an LLM, index into a vector store, or feed a monitoring pipeline. Use it to check that your analytics really count visits and to load test your own site.

Why Choose This Traffic Generator?

  • One row per visit: you see what happened instead of being told to check a dashboard.
  • Honest counters: a visit is marked as counted by analytics only when a real analytics hit was seen, and a YouTube visit whose player shows an error is never reported as a view.
  • Three modes: browser visits, fast HTTP visits and a stress test with p50, p90 and p99 latency.
  • Bulk input: paste a long list of URLs, set visits per URL and the run ends by itself.
  • Visits appear in the Output tab while the run is still going, split into separate tables (the per-URL table is filled when the run ends).
  • Starts without a proxy and moves to stronger proxies on its own if the target refuses visits.

Key Features

  • Generate pageviews with a real browser: varied devices and screen sizes, referrers, languages, scrolling, mouse movement and time on page.
  • Click through internal pages: set pages per visit to open the landing page plus pages inside the site.
  • Play YouTube videos and report how many seconds really played.
  • Platform facts: YouTube title, channel and view count, Etsy shop sales, Behance followers and views.
  • Website stress test: many parallel requests with latency percentiles and requests per second.
  • Core Web Vitals per visit: TTFB, DOM ready, load, FCP, LCP and CLS.
  • Analytics check: GA4, Tag Manager, Meta Pixel, Hotjar, Clarity, LinkedIn, TikTok, Plausible and many more are recognised on the page and in the hits sent.
  • Kill switch, failure guard and screenshots per visit.

Input

{
"urls": ["https://blog.apify.com/", "https://www.youtube.com/watch?v=jNQXAC9IVRw", "https://www.behance.net/tubik"],
"mode": "browser",
"visits_per_url": 2,
"dwell_seconds": "15-40",
"pages_per_visit": 2,
"proxyConfiguration": { "useApifyProxy": false }
}
FieldWhat it does
urls (required)Pages, videos or profiles to visit, one per line. Bulk lists are welcome.
modebrowser (counted by analytics), http (fast, server logs only) or stress (load test).
visits_per_urlVisits every URL gets. Total visits = URLs Γ— this number. Free plan: up to 10 visits per run in total.
dwell_secondsTime on page per visit: a number or a range such as 15-40 (browser mode).
pages_per_visit1 = landing page only, 3 = landing page plus 2 clicked pages (browser mode).
scroll, youtube_autoplayScroll and move the mouse like a reader; press play on YouTube videos.
device_mix, mobile_share, locales, referrersWhich devices, languages and traffic sources the visitors use.
concurrency, stress_concurrencyParallel visitors (browser and HTTP) and parallel requests (stress test).
headless, retry_blocked_headful, browser_channel, screenshotBrowser behaviour: hidden or visible window, retry blocked visits in a visible window, browser build, screenshots.
block_resource_types, block_url_patternsSkip files or addresses to save bandwidth.
timeout_seconds, max_retries, end_after_seconds, max_consecutive_failuresTimeouts, retries, the kill switch and the failure guard.
proxyConfigurationOptional. Runs start without a proxy; stronger proxies are used on their own if visits are refused.

Output

Each visit is one row. This is a real browser-mode row, shortened:

{
"visit": 1,
"url": "https://blog.apify.com/",
"final_url": "https://blog.apify.com/",
"platform": "web",
"mode": "browser",
"route": "direct",
"headful": false,
"started_at": "2026-10-25T12:34:06+00:00",
"duration_seconds": 23.2,
"status_code": 200,
"ok": true,
"blocked": false,
"error": null,
"page": { "title": "Apify Blog: Guides to the largest marketplace of tools for AI", "language": "en", "h1": "Apify Blog", "word_count": 1090, "internal_links": 62, "external_links": 64 },
"timing_ms": { "ttfb": 43, "dom_content_loaded": 4068, "load": 10897, "fcp": 3344, "lcp": 3972, "cls": 0.001 },
"network": { "requests": 395, "failed_requests": 34, "transfer_bytes": 418841, "console_errors": 2 },
"analytics": {
"tags_on_page": { "ga4": ["G-62P18XN9NS"], "google_tag_manager": ["GTM-MNGXGGB"] },
"beacons_fired": ["Google Analytics", "HubSpot", "Microsoft Clarity"],
"scripts_loaded": ["Google Tag Manager", "Segment"],
"pageview_counted": true
},
"engagement": { "dwell_seconds": 9.9, "scroll_depth_pct": 36, "pages_visited": ["https://blog.apify.com/", "https://blog.apify.com/tag/thought-leadership/"], "clicks": 1 },
"visitor": { "device": "Desktop Chrome HiDPI", "device_type": "desktop", "viewport": "1280x720", "locale": "en-US", "referrer": "direct", "proxy": null },
"platform_data": null
}
TableWhat it holds
VisitsThe full row above, one per visit.
PerformanceTimings, Core Web Vitals, request counts and bytes.
PagesThe landing page and every page clicked inside a visit.
AnalyticsTags on the page, hits that fired, libraries that only loaded, counted yes/no.
EngagementTime on page, scroll depth, pages visited, clicks.
VisitorsDevice, viewport, language, referrer and proxy address.
Platform dataYouTube, Etsy and Behance facts.
Per URLVisits, successes, blocks and average timings for each URL.

The Visits table has one view per section (page, timings, network, analytics, engagement, visitor, platform data), and the key-value store record OUTPUT holds the whole run in one file: {"summary": {...}, "visits": [...]}.

The run summary (success rate, status codes, TTFB and load percentiles, requests per second in stress mode) is saved as RUN_SUMMARY in the key-value store. In HTTP mode no scripts run, so pageview_counted stays false and the row says why. Stress rows keep only the fields a load test needs.

πŸš€ How to Use (Apify Console)

  1. Log in at https://console.apify.com and open Actors.
  2. Find Traffic Generator and open it.
  3. Add your URLs, pick a mode and set visits per URL. Leave the proxy as it is unless you want to start with one.
  4. Click Start.
  5. Watch the log: one line per finished visit while the tables fill.
  6. Open the Output tab when the run completes.
  7. Export to JSON, CSV or Excel.

πŸ€– Use via API / MCP

curl -X POST "https://api.apify.com/v2/actors/<ACTOR_ID>/runs" \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"urls":["https://example.com/"],"mode":"http","visits_per_url":5}'

Replace <ACTOR_ID> with the ID shown on the Actor page. For AI agents, add the Apify server with claude mcp add --transport http apify "https://mcp.apify.com"; the agent finds this Actor through the server's search, details and call tools.

Best Use Cases

  • Check that GA4, Meta Pixel or Tag Manager count visits on a site you own.
  • Measure load speed and Core Web Vitals from many different visitor setups.
  • Load test a staging site or your own site before a campaign.
  • Confirm that a YouTube embed or an Etsy or Behance page loads for real visitors.

Pricing

This Actor uses pay-per-event pricing. A visit that succeeds is saved and billed as one result. Blocked or failed visits are saved so you can see what happened and are not billed. If you set a maximum cost per run, the Actor stops cleanly when it is reached.

Frequently Asked Questions

Does every visit count in my analytics? Only browser-mode visits run scripts, so only they can be counted. The pageview_counted field is true only when a real analytics hit was seen during that visit. HTTP and stress visits are visible in server logs and CDN counters only.

Can it raise my YouTube view count? The Actor reports whether the video streamed and how many seconds played. YouTube alone decides whether a view counts, and a rate-limited address often gets a player that does not start; those rows are marked as failed with the reason.

Why was my visit blocked? Some sites show a bot wall or rate limit to automated visitors. The Actor can retry in a visible window (when that option is on) and then moves to stronger proxies on its own. Rows that stayed blocked have blocked: true.

What does the stress test report? One row per request with status and timings, and a summary with p50, p90 and p99 latency and requests per second. Parallel requests are capped at 50.

How do I stop a run early? Set end_after_seconds, or abort the run: everything collected so far is already saved.

Is the layout of a platform page fixed? No. Platforms change their pages from time to time; when a field cannot be read it is null and the log says that some platform fields may be empty.

Which sites can I use it on? Only sites you own or are authorised to test. Platform rules for YouTube, Etsy, Behance and other sites apply to you as the user.

Support and Feedback

Found a page where a field stays empty or a visit is wrongly marked as blocked? Open an issue from the Actor page with the URL, the mode and the run link.