Method version 1.1
How we review and rank Portland electricians
Every business on our Portland list passed the same four record checks and was scored by the same formula. This page sets out every rule. The weights are read from the published data file, so the page and the data cannot disagree.
- Method version
- 1.1
- Applies to
- Portland electricians, run of November 8, 2026
- Weights in this run
- Rating 35, volume 25, recency 10, CCB license history 20, bond and insurance 10 (total 100)
- Manual score changes
- None
01What "review" means here
We review public records and what each business publishes about itself. We did not inspect work, call businesses, ask for quotes or hire anyone. Nothing on this site describes the quality of a business's work.
02Four gates before a business is ranked
A business is ranked in Portland only if all four gates pass on the run date.
- Google listing. The business appears in our Google Maps searches for Portland with an electrical-trade category, as its primary category or an additional one.
- Portland service, from a business source. Its Google Business Profile address is in Portland, or its own website names Portland (or the Portland metro or area) as somewhere it serves. We keep the page URL and the short phrase.
- Active CCB license. It matches a license in the Oregon CCB Active Licenses dataset. Matching evidence, strongest first: the CCB number shown on the business's own website; the same phone number; the same legal name or DBA plus address. Every match records its method and evidence.
- Active BCD electrical contractor license. It matches an Oregon BCD license of type C-Electrical Contractor with status Active. In Oregon an electrical contractor needs this BCD license in addition to the CCB license (Oregon BCD).
One entry per CCB license. When several Google listings that pass the first two gates match one license, we use the listing with the most Google ratings. If two have the same count, a Portland address wins, then the lower Google listing number. Ratings are never added together across listings. The other listings stay in the data and in the evidence record, but they are not ranked twice. We rank licensed companies, not single branch offices.
Businesses that fail a gate are not ranked and not named. The ranking page publishes how many listings passed each gate. A failed match is a limit of public data and of our matching. We never describe it as a licensing problem.
03The score, out of 100
Five parts, applied the same way to every ranked business. RUN is the run date in Pacific time (2026-11-08 for the current ranking).
| Component | Max | Formula |
|---|---|---|
| Google rating | 35 | If n = 0: 0 points. Otherwise:adj = (n * r + 10 * 4.0) / (n + 10)points = 35 * clamp((adj - 3.5) / 1.5, 0, 1) |
| Rating volume | 25 | points = 25 * min(1, log10(1 + n) / log10(1 + 500)) |
| Review recency | 10 | Days from the newest Google review to the run date: up to 30 days, 10; up to 90 days, 8; up to 180 days, 5; up to 365 days, 2; more than 365 days or no reviews, 0 |
| CCB license history | 20 | years = (run date - first issued) / 365.25points = 20 * min(1, years / 20) |
| Bond and insurance on the CCB record | 10 | 5 if a bond amount is listed with an expiry on or after the run date; 5 if a liability insurance amount is listed with an expiry on or after the run date |
r is the Google rating (1 to 5) and n is the number of Google ratings on the pull date. The weights in this table are read from the published data file for this run.
Why the adjustment. The rating is pulled toward 4.0 as if the listing had 10 extra 4.0-star ratings, so a rating built on a few reviews counts for less than the same rating built on many.
No Google ratings. With no ratings (n = 0) there is no rating to adjust, so the rating, rating volume and review recency parts all earn 0. The 4.0 starting value only adjusts real ratings. It never gives points by itself.
Which bond and insurance. The CCB dataset lists a bond and an insurance entry for each endorsement on a license. We read them from the license's primary endorsement: residential first, then commercial, with lead-based paint last.
Ratings cover the whole Google listing. Some businesses that pass the gates also do heating, cooling or plumbing work. Their Google rating, rating count and review dates describe the whole listing. We have not checked that those reviews are about electrical work, and the formula does not try to adjust for it.
04When data is missing
- Not listed in the source. If a source does not list a value, such as Google ratings on a listing with none, or a bond or insurance amount the CCB dataset does not show, that part earns 0 points. The page says "not shown in" and names the source. A blank field is not treated as a finding about the business.
- Not retrieved because of a failure on our side. If a request fails (for example, the review-date request), we retry and request the data again. If it is still unavailable, that part is removed for that business only, and its score becomes
100 * earned / available maximum. An unavailable source is never treated as zero. The entry is labeled "partial data" and names the removed part, and the ranking page states how many entries are partial. Rescaling can change the order compared with full data, so partial entries are not fully comparable. - Not collected for anyone. Complaint history is not part of the formula for any business.
05Where contact details come from
The address, phone number and website shown for each business come from its Google listing or its own website. CCB and BCD records list official mailing addresses. We use those only to match records and never show them as where a business is located.
06CCB license history is not business age
The license history part measures the time since the matched CCB license was first issued (the dataset's orig_regis_date). The dataset does not show whether the license was held without a break, and a business may be older than its current license. We never present this number as the age of a business.
07Ranking order and ties
Businesses are sorted by unrounded score, highest first. Two scores that differ by less than 0.000000001 are a tie, broken in this order:
- more Google ratings;
- then the earlier CCB first-issued date;
- then the lower CCB license number.
Scores display to one decimal, so two businesses can show the same score at different ranks.
08No manual adjustment
No score is changed by hand. The only manual decisions are about data matching: which license belongs to which Google listing. Each one is recorded with its evidence, and every evidence record on the ranking page shows how that business's licenses were matched.
09Crewsive clients
Smiley Electric is a Crewsive marketing client with a separate affiliated feature. Active promoted businesses are excluded from the scored comparison, its source-record list, schema and ranking downloads. Smiley passed the public-record gates; this exclusion is a publishing policy, not a safety judgment. The other businesses retain their computed scores and their positions are renumbered. Publication policy version 2 took effect on November 9, 2026.
No business in the current Portland ranking is a Crewsive client.
10Data sources and dates
Dates for the current Portland run, in Pacific time.
| Source | Dates for this run | Access |
|---|---|---|
| CCB Active Licensesdata.oregon.gov g77e-6bhs, public domain | Updated November 8, 2026 at 10:09 AM PST; pulled November 8, 2026 at 8:54 PM PST | Dataset page; Socrata API |
| Building Codes Division - Active Contractor/Individual Licensesdata.oregon.gov vhbr-cuaq, public domain | Updated November 6, 2026 at 5:22 PM PST; pulled November 8, 2026 at 8:56 PM PST | Dataset page; Socrata API |
| Google Maps listingsDataForSEO Google Maps SERP live/advanced | Pulled November 8, 2026 at 8:57 PM PST | Paid API; each business links to its Google profile |
| Google review datesDataForSEO Google Reviews (newest 10, dates only) | Pulled November 8, 2026 at 9:03 PM PST | Paid API; dates only, review text deleted before storage |
| Business websitesCrewsiveRankingsBot/1.0 (+https://localprosranked.com/contact) | Checked November 8, 2026 to November 8, 2026 | Polite crawl; robots.txt respected; at most 8 pages per site |
11What we do not collect, and why
- CCB complaint history. The CCB lookup site (search.ccb.state.or.us) and the state's older licensing site (www4.cbs.state.or.us) disallow automated access in their robots.txt files, so we do not collect from them. The CCB open dataset has no complaint column. Every evidence record links to the CCB lookup so you can read complaint history yourself.
- Google review text and reviewer details. We keep only the dates of the newest reviews. Review text is deleted before anything is stored.
- Prices, quotes and quality of work. We did not contact or hire any business, so none of this is measured.
12Official lookups
Check any business yourself with the state's own tools:
- Oregon CCB license lookup: license status, bond, insurance and complaint history for any CCB number.
- Oregon BCD license search: electrical contractor and electrician licenses.
- Oregon BCD: work that needs a license: why an electrical contractor needs a BCD license as well as the CCB license.
- CCB Active Licenses dataset and BCD Active Licenses dataset: the open data we pull, on data.oregon.gov.
Our license guide walks through both lookups step by step.
13Worked example
A business with a 4.8 rating from 120 ratings, a newest review 12 days old, a CCB license first issued 11.5 years before the run date, and a current bond and insurance:
| Step | Working | Points |
|---|---|---|
| Google rating | adj = (120 * 4.8 + 10 * 4.0) / 130 = 4.73846; 35 * (4.73846 - 3.5) / 1.5 | 28.8974 |
| Rating volume | 25 * log10(121) / log10(501) = 25 * 2.08279 / 2.69984 | 19.2862 |
| Review recency | Newest review 12 days before the run date | 10 |
| CCB license history | 20 * 11.5 / 20 | 11.5 |
| Bond and insurance | Bond and liability insurance both listed and current | 10 |
| Total | Displayed to one decimal as 79.7 | 79.6836 |
14Version
Method version 1.1, used for the run of November 8, 2026. Version 1.1 changed one rule before this site first published: when several Google listings match one license, the listing with the most Google ratings is used. Version 1.0 put a Portland address first, which on this run would have scored some companies from a small secondary listing. Weights and formulas did not change. Any later change to a rule gets a new version number here and in the data files.
What we check
| Source | What it shows | Coverage | Source dates |
|---|---|---|---|
| Google listing | Listed contact details, rating, count and review date | 951 / 951 | 2026-11-09 |
| Oregon CCB | Dated license, endorsement, bond and insurance fields | 514 / 951 | 2026-11-08 |
| Oregon BCD | Contractor license class and status | 138 / 951 | 2026-11-08 |
| Business website | Services stated by the business; service quality is not established | 63 / 951 | 2026-11-08 |
Not checked: workmanship, price fairness or first-hand testing.
Town and community pages · local-1.0
A small edge for a local address.
Town rankings use the same regional electrician research, then give businesses with a listing address in that town a two-point edge. This is an editorial weighting choice, not a measured improvement in workmanship.
Town score = (regional score × 0.98) + local address bonus
- 98 points: the original regional score supplies 98% of the total.
- 2 points: the Google listing city matches the town. A website service-area statement qualifies a business for the list but earns no address bonus.
- Order: highest unrounded town score first. Ties use higher unrounded regional score, more Google ratings, then the smaller numeric Google listing ID. Scores display one decimal.
For example, two businesses with a regional score of 90 receive 90.2 with a matching local address, or 88.2 with service-area evidence only. Google star ratings and regional scores stay unchanged.
This is an address-based local preference, not driving distance, response time or a promise of availability. A business outside the town may be closer to your street. No missing address earns a bonus. These are rankings of matched records, not a complete town-wide market survey. The Portland and Salem regional pages retain their original scores. Separate promotional features are excluded.
Other service trades
Review-data rankings across all trades.
The other service categories now have numbered rankings, top lists and source breakdowns. The following review-data method applies to those categories. The original Oregon electrician comparison keeps its additional license gates and components.
Method reviews-1.0
How the score is calculated.
Each business receives the same calculation. The rating, volume and recency components follow our electrician formula, then normalize their 70 available points to 100. License history and bond/insurance points are not used here. The original Oregon electrician comparison uses additional eligibility and license components, so its score is not directly comparable to this review-data score.
Rating · 35 points: with n ratings and average r, adjusted rating a = (n × r + 10 × 4.0) ÷ (n + 10). Points = 35 × clamp((a − 3.5) ÷ 1.5, 0, 1). With zero ratings, award zero.
Volume · 25 points: 25 × min(1, log10(1 + n) ÷ log10(501)).
Recency · 10 points: newest review within 30 days: 10; 90 days: 8; 180 days: 5; 365 days: 2; older or no ratings: 0.
Final score: 100 × (rating + volume + recency points) ÷ 70. Display one decimal; sort by the unrounded value. Ties use more Google ratings, then the lower numeric Google listing ID.
A missing review-date retrieval excludes a rated listing until resolved; it does not become a zero. No ratings earns zero. Credential matching is separate context and does not affect this score. No score or rank is changed by hand. This is a public-review-data comparison, not a workmanship or safety assessment.
Two questions, two methods
Portland Oregon Reviews orders dated records with the published score. Local Pros Ranked uses job-specific service evidence with no overall score. A business can lead one comparison and not qualify for a particular job category. Crewsive LLC owns both methods; neither is an independent endorsement of the other.
Use this reference
Cite this page
Crewsive LLC. “How we review and rank Portland electricians | Portland Oregon Reviews.” Portland Oregon Reviews. Content updated 2026-11-10. https://portlandoregonreviews.com/how-we-rank
For ranking data, also state the data snapshot date (2026-11-08) and method version. A citation is a reference, not an endorsement.