HCPCS code S0518 – Sunglasses frames
S0518 is the HCPCS Level II code for sunglasses frames.
It bills the frame alone, one unit per frame, so each lens goes on its own line. As a temporary national S code, S0518 is never paid by traditional Medicare. Coverage depends on each commercial, vision, or Medicaid plan's own policy.
- Range
- S0012-S9999 Temporary national codes (non-Medicare)
- Category
- S0500-S0596 Vision Supplies
- Status
- Active, effective 1 July 2001
- Billable
- No
- Code also known as
- sunglass frames
Let Pabau's smart automation suggest the right codes, reduce claim denials, and keep your practice compliant—effortlessly.
- AI-powered code suggestions
- Real-time compliance checks
- Faster claims, fewer denials
Automate repetitive tasks and focus on what matters most—your patients.
Reduce coding errors and ensure compliance with the latest regulations.
Clean claims, fewer denials, and faster reimbursements.
Powerful insights and reporting to help your practice thrive.
HIPAA compliant SOC 2 certified GDPR-compliant Trusted by 4,000+ clinics worldwide
Key takeaways
HCPCS code S0518 bills a sunglasses frame only, so the code carries no lens and goes on the claim as one unit per frame.
A pair of non-prescription sunglasses usually takes three claim lines: S0518 for the frame and S0510 once for each lens.
CMS lists S0518 with coverage indicator I, not payable by Medicare, so traditional Medicare never pays it.
Safety frames bill as S0516 and standard eyeglass frames as V2020, so confirm the frame type before you code.
Pabau, the practice software we build, keeps frame stock, the checkout invoice, and the claim on one patient record.
HCPCS code S0518: Definition, descriptor, and code classification
HCPCS code S0518 is the Level II temporary national code for sunglasses frames. It sits in the S-code series, which runs from S0012 to S9999. CMS added it on July 1, 2001, and it is still active in the October 2026 HCPCS file.
The official descriptor is two words long: Sunglasses frames. It describes only the frame. There is no lens in the code and no per-lens or per-pair wording, so practices report one unit for each frame dispensed.
What the S-code status means for payment
The Blue Cross Blue Shield Association and other private payers created the S codes for their own reporting needs. CMS publishes them in the HCPCS file but doesn’t pay them. Every code in the vision supply range, S0518 included, carries coverage indicator I, which means not payable by Medicare.
The CMS HCPCS quarterly update file holds the full record for the code. The fields below come from the October 2026 release.
What S0518 covers and what it excludes
S0518 covers the frame of a pair of sunglasses, whether the lenses that go into it are plano or prescription. Lenses, lens add-ons, and other frame types each take their own code. The table maps the items an optical practice dispenses most often.
The S0595 row catches a frequent mistake. When a patient brings their own sunglasses frame for new lenses, the practice dispenses no frame. S0518 then has no place on the claim.
Coding a dispense comes down to two questions, asked in order. The chart below settles the frame first, then the lens lines that go with it.

How a pair of sunglasses bills: One frame, two lenses
A complete pair of sunglasses is usually three claim lines, because S0518 prices the frame alone. The lens codes in the S0500-S0596 range are written per lens, so each eye gets its own line or unit. Billing S0518 by itself for a finished pair leaves both lenses unpaid.
The RT and LT modifiers belong on the lens lines. One frame serves both eyes, so the S0518 line takes no eye modifier unless the payer’s manual asks for one.
Two add-on codes can join the claim. S0580 (polycarbonate lens) and S0581 (nonstandard lens) are listed in addition to the basic lens code, as their descriptors instruct. Our guide to HCPCS code S0510 covers the non-prescription lens lines in detail.
S0508 handles the lens side of a trifocal sunglass dispense, with a separate unit for each eye alongside the single frame line. Single-vision and bifocal sunglass prescriptions take S0504 and S0506 on the lens lines instead.
How S0518 compares to adjacent frame codes
Frame codes are split between the S series and the V series, and the frame’s purpose decides which applies. Each descriptor below is quoted from the October 2026 CMS HCPCS file, along with its Medicare coverage indicator.
S0516 and S0518 are the pair coders swap most often, since both are S-series frame codes with no unit wording. The frame’s job settles it. Safety frames are built and rated for impact protection, while sunglasses frames are built to carry tinted or polarized lenses.
Payer policy treats the two differently as well. The Centene and Envolve Vision optical hardware policy (CP.VP.06) lists S0518 in its code table. It sets medical necessity criteria for safety frames, such as vision in only one eye, but names none for sunglasses frames.
Pro Tip
Code the frame from the product record, not from the patient’s description. A wraparound sports frame with impact-rated lenses may be a safety frame. A fashion frame with tinted lenses is a sunglasses frame. When the record doesn’t say which, ask the dispensing optician before the claim goes out.
Payer coverage for S0518 in 2026
Traditional Medicare doesn’t pay S0518. CMS gives the code coverage indicator I, and Medicare doesn’t accept S codes on any claim. Medicare’s eyeglass coverage is limited to one pair with standard frames after cataract surgery that implants an intraocular lens.
Even that post-cataract pair isn’t billed with S0518. Its frame goes on a V2020 line, and its lenses take V-code lens lines. A patient who wants sunglasses after cataract surgery usually pays for the frame out of pocket or through a separate vision plan.
Which payers may accept S0518
- Commercial medical plans. Plans that use S codes may list S0518 in a fee schedule, though many treat sunglasses as a non-covered convenience item.
- Vision benefit plans. Coverage depends on the plan’s frame allowance and how often it renews, commonly once every 12 or 24 months.
- Medicaid managed care. Plans such as those under Centene list S0518 but defer to plan specifics and the state Medicaid manual for payment.
- Medicare Advantage plans. Some carry supplemental vision benefits with their own code lists, so check the plan rather than traditional Medicare rules.
No national payment rate exists for S0518, so each payer sets its allowed amount by contract. Running insurance eligibility verification before the frame is ordered confirms the frame allowance and when it was last used.
Diagnosis codes to pair with S0518
Pair S0518 with the ICD-10-CM code that explains why the patient needs sun protection, such as photophobia or albinism. Where the payer treats sunglasses as a routine vision benefit, the eye examination encounter code is often enough. Each code below is valid in the FY2027 ICD-10-CM release.
The Centene and Envolve policy names albinism and congenital aphakia as indications for lens tint and UV coating. Tint bills as V2745, and UV coating as V2755. Those criteria apply to the lens features, not the frame. Use them to support the lens lines, and confirm whether the plan covers the S0518 frame at all.
Documentation requirements for S0518
A defensible S0518 claim shows what the frame was, why it was dispensed, and which lenses went into it. Keep these elements in the patient record before the claim goes out:
- Frame type. The dispensing note says sunglasses frame, not safety frame or standard eyeglass frame.
- Frame details and invoice. Record the brand, model, and supplier invoice, since many plans price frames manually from the invoice.
- Lens lines. Note the lens type for each eye, so the lens codes and RT/LT modifiers match the record.
- Prescription. Keep the signed spectacle prescription on file whenever the sunglass lenses carry corrective power.
- Clinical reason. Document photophobia, albinism, or aphakia when the claim relies on medical necessity.
- Dispense date and authorization. The date of service matches the dispense date, and any authorization number is on file.
Centene’s policy states that practices keep the material invoice and a detailed item description for every manually priced code. A frame claim without the invoice is hard to defend in a post-payment review.
Common S0518 claim denial reasons and how to resolve them
Most S0518 denials trace back to the payer, the frame type, or the benefit period. The CARC codes below are typical, though payers vary in which code they return.
Reading medical billing denial codes correctly decides the response. A CO-96 from Medicare confirms the non-coverage, so it needs no appeal. A CO-119 means the frame frequency limit was reached, so recoding the frame won’t get it paid.
Pro Tip
Pull every denied S0518 line once a month and sort by reason code. If CO-119 tops the list, add a frame-date check to scheduling. If CO-16 leads, the frame type isn’t reaching the claim, so fix the dispensing template first.
Building clean S0518 claims: A pre-submission checklist
These checks take a couple of minutes and prevent most of the denials above. Run them on every claim that carries a sunglasses frame.
- Confirm the frame type. The record says sunglasses frame, so S0516 or V2020 doesn’t apply.
- Bill one unit. One frame is one unit of S0518.
- Add the lens lines. Bill S0510, S0504, S0506, or S0508 per lens, with RT and LT.
- Rule out traditional Medicare. If Medicare is the only payer, collect from the patient instead.
- Check the frame allowance. Confirm the last frame date and the benefit period with the payer.
- Attach the diagnosis. Use H53.14-, E70.3-, H27.0-, or an eye exam encounter code, per payer policy.
- Keep the invoice on file. Store the frame’s supplier invoice with the dispensing note.
Clean frame claims go through without manual review. Running these checks inside a clean claim workflow keeps the audit trail in one place.
How Pabau keeps S0518 claims and frame stock in step
Optical practices often sell frames from one system and bill them from another. The frame type, the lens lines, and the invoice get retyped between the two. Each retype is another chance to bill a safety frame as S0518.
In Pabau, frames sit in inventory with their supplier cost and product details. Selling one at checkout draws it from stock and adds it to the patient’s invoice. Your billing team then codes from the item that left the shelf.

Pabau’s claims management flags denials as they arrive and tracks each submission’s status. The monthly S0518 denial review then runs from a saved report, so nobody rebuilds a spreadsheet each month.
Bill frames and lenses from the item that left the shelf
Pabau links frame inventory, checkout, and claims on one patient record, so your optical claims carry the right frame code and every lens line. See how it works for your practice.

Conclusion
Treat every S0518 dispense as a three-line claim from the start. The frame code alone never pays for a finished pair of sunglasses.
Then settle who pays before the frame is ordered. Traditional Medicare never will, and many plans treat sunglasses as a patient-paid item. A quick benefit check turns a likely denial into a price the patient agrees to at the counter.
Get both steps right and an S0518 claim seldom needs an appeal. Book a demo to see how Pabau keeps frame stock, checkout, and optical claims on one patient record.
Continue your research
Fitting prescription sunglass lenses with a bifocal segment? HCPCS code S0506 explains how bifocal safety, athletic, and sunglass lenses are billed.
Checking the allowed amount on a paid frame claim? Electronic remittance advice shows how to read the ERA and reconcile adjustments after payment.
Want frame claims that survive a payer audit? Medical billing compliance covers the documentation standards that keep claims defensible.
Frequently asked questions
What does HCPCS code S0518 cover?
HCPCS code S0518 covers a sunglasses frame, billed as one unit per frame. It doesn’t include the lenses, which bill separately per lens. Safety frames use S0516, and standard eyeglass frames use V2020.
Is S0518 covered by Medicare?
No. CMS lists S0518 with coverage indicator I, not payable by Medicare, and traditional Medicare doesn’t accept S codes. Some Medicare Advantage plans with supplemental vision benefits use their own code lists, so check the plan directly.
What is the difference between S0516 and S0518?
S0516 is for safety eyeglass frames, built and rated for impact protection. S0518 is for sunglasses frames, built to hold tinted or polarized lenses. Both bill one unit per frame, so the frame record decides the code.
How do you bill a complete pair of sunglasses?
Bill S0518 once for the frame, then one lens code for each eye with RT and LT. Non-prescription lenses use S0510. Prescription lenses use S0504, S0506, or S0508, depending on the lens type.
What diagnosis codes support an S0518 claim?
Common pairings are H53.14- for visual discomfort including photophobia, E70.3- for albinism, and H27.0- for aphakia. Under a routine vision benefit, Z01.00 or Z01.01 for an eye examination often fits. Payer policy decides which it accepts.
Why would a claim for S0518 be denied?
The most common causes are billing traditional Medicare, a used-up frame allowance, and a safety or standard frame coded as S0518. Missing medical necessity notes and absent authorization also trigger denials. Read the CARC on the remittance before you respond.



