We extract designer portfolios, contest briefs, pricing tiers, and client reviews from 99designs. Delivered as clean JSON, CSV, or Parquet to S3, BigQuery, or Snowflake on your cadence.
Structured, schema-consistent data across all major object types — delivered clean, typed, and ready to query.
Complete list of extractable fields for Designer Profiles objects from 99designs.com. All fields typed and schema-versioned.
"username": "pixel_perfect99", "display_name": "Studio Pixel", "designer_level": "Top Level", "primary_category": "Logo design", "response_time": "1 hour", "total_contests_won": 142, "location": "Indonesia"
| # | username | display_name | designer_level | primary_category | response_time | repeat_client_rate |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | ||||||
| 3 |
Complete list of extractable fields for Portfolios objects from 99designs.com. All fields typed and schema-versioned.
"asset_id": "99d-8472910", "designer_username": "pixel_perfect99", "project_title": "Modern Tech Startup Logo", "category": "Logo & identity", "tags": "['minimalist', 'tech', 'blue', 'vector']", "likes_count": 34, "views_count": 1205
| # | asset_id | designer_username | project_title | image_url | category | tags |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | ||||||
| 3 |
Complete list of extractable fields for Contests objects from 99designs.com. All fields typed and schema-versioned.
"contest_id": "1284992", "title": "Rebrand for organic coffee shop", "prize_amount": 899.0, "currency": "USD", "status": "Completed", "entries_count": 112, "industry": "Food & Drink"
| # | contest_id | title | client_name | prize_amount | currency | status |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | ||||||
| 3 |
Complete list of extractable fields for Agency Profiles objects from 99designs.com. All fields typed and schema-versioned.
"agency_id": "ag_99281", "agency_name": "Creative Minds Agency", "rating": 4.9, "review_count": 87, "minimum_project_size": 1500.0, "team_size": "5-10", "location": "United Kingdom"
| # | agency_id | agency_name | rating | review_count | minimum_project_size | team_size |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | ||||||
| 3 |
Complete list of extractable fields for Client Reviews objects from 99designs.com. All fields typed and schema-versioned.
"review_id": "rev_748291", "designer_username": "pixel_perfect99", "rating": 5.0, "comment": "Exceptional work on our brand identity. Highly recommended.", "project_type": "Brand guide", "date_posted": "2026-02-14", "helpful_votes": 3
| # | review_id | designer_username | client_name | rating | comment | project_type |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | ||||||
| 3 |
Our pipeline navigates 99designs platform layers, capturing designer metadata, portfolio assets, and contest histories with full JavaScript rendering and automated pagination.
Extract designer level, response rates, location, repeat client metrics, and total contests won across the entire designer catalogue.
Scrape high resolution image URLs, project titles, category tags, and engagement metrics from designer portfolios.
Track contest briefs, prize tiers, entry counts, winning designs, and client industries for public contests.
Map agency profiles, team sizes, minimum project values, and aggregate ratings for design teams.
Capture client feedback, star ratings, and project types to evaluate designer reliability and client satisfaction.
Extract specialised fields for logo design, web design, packaging, and illustration categories.
Monitor 1-to-1 project pricing, contest prize pools, and agency minimums across different design categories.
Aggregate software skills, design styles, and colour preferences tagged on designer profiles and portfolio items.
Run one off bulk exports or configure continuous pipelines at weekly cadences with change detection diffing.
Brief in. Clean data out.
Provide target categories, designer levels, or specific contest URLs. We design the extraction schema together.
We configure Scrapy and Playwright crawlers, proxy rotation, session management, and pagination handling for 99designs.com.
Schema validation, null rate checks, and sample data reviews before full launch.
JSON, CSV, or Parquet pushed to your S3 bucket, BigQuery dataset, or Snowflake stage on agreed cadence.
Extracting from a heavily visual, dynamic marketplace requires specialised infrastructure. Here is how we maintain pipeline stability.
Marketplaces monitor scrape velocity. Our crawlers use residential ISP proxies with realistic browser fingerprints and randomised request timing, trained on real user behaviour patterns.
99designs portfolios and dynamic search filters rely heavily on JavaScript. We run full Playwright browser sessions with lazy load triggering to capture assets that headless HTTP clients miss entirely.
Marketplace layouts evolve. Our selector strategy uses multiple fallback chains per field, including CSS selectors, XPath, and text pattern matching, so a layout change does not break your data pipeline.
For large designer catalogues, we maintain a hash index of last seen values per field. Subsequent runs only push diffs, reducing compute cost and downstream processing load.
Every run emits structured logs to our observability stack. We alert on null rate spikes, schema drift, and coverage drops, responding before you notice.
Agencies and in house teams identify top tier freelance designers based on verified contest wins, response rates, and client reviews.
Freelance platforms and agencies monitor contest prize tiers and 1-to-1 project minimums to optimise their own pricing models.
Analysts track design category growth, popular style tags, and geographic talent distribution to understand the freelance economy.
Machine learning teams use tagged portfolio assets and design metadata to train generative AI models and image classifiers.
Design agencies track competing agency profiles, client lists, and review sentiment to refine their market positioning.
Private equity firms evaluate marketplace liquidity, contest volume, and designer retention metrics to assess platform health.
"99designs holds the largest structured repository of freelance design talent and contest outcomes on the internet, but accessing it at scale requires dedicated infrastructure."
Most teams underestimate the investment required. Reliable 99designs scraping requires residential proxies, full JavaScript rendering for portfolio grids, and daily selector maintenance. DataFlirt absorbs that complexity so your engineers can focus on analysis, not infrastructure.
Everything supported by our 99designs.com scraper — rendered SPA elements, auth walls, rate-limit evasion and beyond.
Open-source tooling on proven cloud infra — no vendor lock-in, full observability.
Scrapy handles crawl orchestration, deduplication, and retry logic. Playwright handles JavaScript rendering, cookie sessions, and interaction flows for dynamic portfolio grids.
We maintain pools of residential ISP proxies globally. Rotation happens per request with sticky sessions where required. IP score monitoring prevents blacklisted pool contamination.
Pipelines run on AWS Lambda and ECS. Airflow handles scheduling, dependency management, and SLA alerting. All state stored in managed Postgres.
Data delivered to where your team already works — no new tooling required.
About 99designs.com scraping, legality, and pipeline operations.
Ask us directly →Scraping publicly available information is generally permissible under applicable law. DataFlirt targets only public, non authenticated designer profiles, portfolios, and public contests. We do not extract private messages or NDA protected briefs. Clients should review platform terms of service and consult legal counsel for specific use cases.
99designs portfolios use JavaScript based lazy loading. We utilise Playwright to simulate human scrolling behaviour, ensuring all portfolio assets are loaded into the DOM before extraction occurs.
No. We only extract publicly available data. Contests that require a signed NDA or are hidden behind authentication walls are not supported by our pipelines.
Full catalogue refreshes at weekly or monthly cadences complete within defined windows. For specific target lists, we can configure daily runs to monitor new contest entries or profile updates.
We extract the direct URLs to the highest resolution image assets publicly exposed in the DOM. You can then download these assets directly or configure our pipeline to handle media storage.
Our packages start at defined profile lists or specific design categories with monthly delivery. For full platform extraction, we price based on compute volume and delivery frequency. Contact us with your requirements.
Yes. We extract all visible category tags, software skills, and style preferences listed on designer profiles and individual portfolio items, normalising them into structured arrays.
Absolutely. We provide a sample run of up to 500 designer profiles or 50 contests as part of the pre engagement scoping process, allowing you to validate schema fit and data quality.
20-minute scoping call. Pilot dataset within the week. Production within two. Whether you need a one off designer directory dump or continuous tracking of contest outcomes, we scope, build, and operate the pipeline. Tell us what you need.